| 导读  
 什么是结构?结构的作用。如何使用结构?
 结构作用用一个整体来表达多个数据 struct date
{
int month
int day
int year
};
 结构声明声明的位置在函数内部声明的结构只能在函数内部使用,不能在其他函数使用,故一般在函数外声明结构 声明的方式struct point
{
int x;
int y;
};
struct point p1,p2
 struct
{
int x;
int y;
}p1,p2;
 struct point
{
int x;
int y;
}p1,p2;
 结构变量初始化struct date today={07,31,2014}
 struct date thismonth={.month=7,.year=2014}
 结构用.运算符及其名字来访问其成员注:.运算符的左边应为结构变量,而不是结构类型
 要访问整个结构直接用结构变量的名字
 结构运算对于整个结构,可以做赋值,取地址,也可以给函数传地址 赋值p1=(struct point){5,10};
 p1=p2
 地址和数组不同,结构必须使用&运算符 struct date *pDate=&today
 结构体与函数结构作为参数结构可以作为函数的参数函数也可以返回一个数组
 输入:不能用scanf一次性输入一个数组
 如果用函数来进行输入,因函数中的那个结构不是函数外的那个结构,所以,函数不能直接输入,但是,函数可以将输入的结构作为返回值返回给函数外的结构(前面的类型为struct ……)
 结构指针作为参数指向结构的指针用->表示指针所指的结构变量中的成员 struct date
{
int month;
int day;
int year;
}myday;
struct date *p=&myday
*p.month
p->month
 结构体数组与整型,字符型类似,结构体也有数组在初始化时需要多个{},最外面一个是数组的,里面的每一个对应数组中每个结构
 struct time testtimes[5]={{11,59,59},{12,0,0},{1,29,59},{23,59,59},{19,12,27}}
 同理结构中也可以放结构 struct dateAndTime{
struct date sdate
struct time stime
}
 嵌套因为结构里可以放结构,所以在调用结构中的结构时需要两个.运算符
 如果有指针,也可以使用->运算符与.运算符嵌套使用
 |