本篇博文最後修改時間:2017年07月17日 15:55。
一、簡介
C語言定義struct結構體。
二、實驗平臺
電腦平臺:Windows7 64位旗艦
編譯軟件:VC6.0++
三、版權聲明
博主:_懵懂
聲明:此博客僅供參考不做任何商業用途,最終解釋權歸原博主所有。
原文地址:http://blog.csdn.NET/qq_18842031
懵懂之MCU交流羣:136384801
四、實驗前提
1、在進行本文步驟前,請先安裝VC6.0++版本;
五、基礎知識
暫無
六、定義struct結構體
1、只有結構體
struct strudata{
int data1;
int data2;
int data3;
};
2、只有結構體的調用
struct strudata Strudata;
int main()
{
Strudata.data1 = 10;
Strudata.data2 = 11;
Strudata.data3 = 12;
printf("%d,%d,%d",Strudata.data1,Strudata.data2,Strudata.data3);
return 0;
}
結果輸出10,11,12。
3、附加結構體變量
struct strudata{
int data1;
int data2;
int data3;
}Strudata;
int main()
{
Strudata.data1 = 10;
Strudata.data2 = 11;
Strudata.data3 = 12;
printf("%d,%d,%d",Strudata.data1,Strudata.data2,Strudata.data3);
return 0;
}
結果輸出10,11,12。
4、結構體指針和數組
struct strudata{
int data;
int buf[10];
};
struct strudata Strudata;
int main()
{
struct strudata *p = &Strudata;
p->data = 10;
printf("%d\n",p->data);
for(unsigned char i = 0; i < 10; i++)
{
p->buf[i] = i;
printf("%d\n",p->buf[i]);
}
return 0;
}
結果輸出10 0 1 2 3 4 5 6 7 8 9。
5、結構體裏的結構體
struct A{
struct B{
int num;
struct C{
int temp;
}c;
}b;
}a;
int main()
{
a.b.c.temp = 10;
struct A *p=&a;
p->b.num = a.b.c.temp;
printf("%d\n",p->b.num);
return 0;
}
結果輸出10。