#include <stdlib.h>
#include <stdio.h>
struct A {
int B;
short C[2];
int *P;
}strTest0 = {8,0,0,NULL};
int main()
{
struct A strTest1 = {1,0,0,NULL};
struct A strTest2 = {/*.B =*/ 2,
/*.C =*/ {1,1},
/*.P =*/ NULL};
// 就像静态变量那样,
// 自动初始化数组C的所有元素为0,
// 初始化P为NULL
struct A strTest3 = {3,{4}};
struct A strTest4 = {0};
printf("strTest0: B = %d, C[0] = %d, C[1] = %d, P = 0x%x \n",
strTest0.B, strTest0.C[0], strTest0.C[1], strTest0.P);
printf("strTest1: B = %d, C[0] = %d, C[1] = %d, P = 0x%x \n",
strTest1.B, strTest1.C[0], strTest1.C[1], strTest1.P);
printf("strTest2: B = %d, C[0] = %d, C[1] = %d, P = 0x%x \n",
strTest2.B, strTest2.C[0], strTest2.C[1], strTest2.P);
printf("strTest3: B = %d, C[0] = %d, C[1] = %d, P = 0x%x \n",
strTest3.B, strTest3.C[0], strTest3.C[1], strTest3.P);
printf("strTest4: B = %d, C[0] = %d, C[1] = %d, P = 0x%x \n",
strTest4.B, strTest4.C[0], strTest4.C[1], strTest4.P);
return 0;
}