文本内容:
语言中结构体的初始化C《代码大全》建议在变量定义的时候进行初始化,但是很多人,特别是新人对结构体或者结构体数组定义是一般不会初始化,或者不知道怎么初始化
1、初始化typedef struct_TEST_T{int i;char c
[10];}TEST_T;TEST_Tgst={1,12345};〃可以初始化,设置i为L s为一个字符串.TEST_Tgst={1};〃初始化个数少于实际个数时,只初始化前面的成员TEST_Tgst={.c=12345};〃有选择的初始化成员
2、复合字面量〃这是一个赋值语句,也可以作为初始化可以gst=TEST_T{122,1256};出现在程序的任何地方当然也可以使用复合字面量来初始化gst=TEST_.c=123;T{=122,J
3、结构体数组可以用多个大括号括起来TEST」gst
[10]={{},{},{},{}}也可以初始化其中的一个元素TEST_Tgst
[10]={
[2]=[}
[3]={}}f也可以使用复合字面量TEST_Tgst
[10]={
[2].i=O
[3].i={}}f
4、为什么要初始化对局部变量初始化可以防止随机值产生的危害1对全局变量初始化可以告诉编译器,这是一个定义,而不是一个声明2如果两个中有相同的全局变量定义,且没有初始化,编译器会认为第二个是声c明而不是定义。