Required since you "can" declare structure variables in this location
6-13
Initializing Structures
Can initialize at declaration
Example: struct Date { int month; int day; int year; }; Date dueDate = {12, 31, 2003}; Declaration provides initial data to all three member variables
6-14
Dr. Amal Khalifa - Spring 2012
7
5/12/2012
Structure Assignments
Given structure named Date
Declare two structure variables: Date d1, d2;
Both are variables of "struct type Date"
Simple assignments are legal: d1= d2;
Simply copies each member variable from d1 into member variables from d2
6-15
Structures as Function Arguments
Passed like any simple data type
Pass-by-value Pass-by-reference Or combination
Can also be returned by function
Return-type is structure type Return statement in function definition sends structure variable back to caller
6-16
Dr. Amal Khalifa - Spring 2012
8
5/12/2012
.
Example: 2D point Structure
Define a C++ structure for a 2D point. Each point is described by an (x, y) coordinate. Define the needed functions to : Read a point coordinates Display point data Translate a point along x-axis or y-axis Compute the distance between two points using the following formula:
Example: Array of Students // an array structure of student information #include using namespace std; struct student { char id[6]; char name[50]; char gender; int age; };
// student id number, max. 5 digits // student name, max 49 characters // student gender Male or Female // student age
void main() { // declaring array of 10 element of structure type // and some of the element also are arrays student stud[10];
19
Dr. Amal Khalifa, 2012
Example: Array of Students int i = 0; cout<<"Keying in student data and then display\n"; cout<<"---------------------------------------\n"; cout<<"Enter student data\n"; for(i=0; i<2; i++) { // storing data of the first two students cout<<"\nID number (4 digit number) student #"<>stud[i].id; cout<<"First name student #"<>stud[i].name; cout<<"Gender (M or F) student #"<>stud[i].gender; cout<<"Age student #"<>stud[i].age; }
20
Dr. Amal Khalifa - Spring 2012
Dr. Amal Khalifa, 2012
10
5/12/2012
Example: Array of Students cout<<"\n----------Display the data---------\n"; cout<<"You can see that the data storage\n"; cout<<"has been reserved for the structure!\n"; cout<<"------------------------------------\n"; for(i=0; i<2; i++) { // displaying the stored data of the first two students cout<<"\nID number student # "<
21
May 12, 2012 - 3. Structure data type. Dr. Amal Khalifa, 2012. 5. Structure data Types. Dr. Amal Khalifa, 2012. 6. Type definition. Variable declaration. Member access ... 7 struct CDAccountV1 âName of new "type". { double balance;. â member names double interestRate; int term;. }; Structure Variable declaration.