C語言之結構體基礎----防備忘
【注】
①結構體字節對其問題;
1.結構體定義
typedef struct 結構體名
{
基本類型
}結構體替換名;
結構體替換名 變量1,變量2;
eg:
typedef struct student
{
int obj[5];
char toa;
}stu;
stu obj1,obj2;
2.結構體嵌套
typedef struct 結構體名1
{
基本類型
}結構體替換名1;
typedef struct 結構體名2
{
基本類型
結構體替換名1 變量名; //嵌套
}結構體替換名2;
eg:
typedef struct student
{
int obj[5];
char toa;
}stu;
typedef struct Node
{
int obj;
stu toa[2]; //嵌套
}LNode;
3.結構體指針
eg:
typedef struct tagNode
{
char *pItem;
int total;
}pNode;
pNode *obj;
4.結構體自身嵌套
typedef struct Node
{
int data;
struct Node *next;
}*LNode; //單鏈表定義的結構體類型,自身嵌套自身
5.結構體數組
typedef struct student
{
int obj[5];
char toa;
}stu,*point;
stu obj[5];
point=obj; //則 point+2=&obj[2]
6.結構體作爲形參【類比基本數據類型】
stu obj;
void fun(stu toa);
調用fun(obj);
stu obj
void fun(stu *toa);
調用fun(&obj);
stu obj[5];
void fun(stu *toa); / void fun(stu toa[]);
調用fun(obj); / fun(obj);