结构体的4种初始化方式

[objc]  view plain  copy
  1. //  
  2. //  main.c  
  3. //  C语言学习  
  4.   
  5.   
  6. #include   
  7.   
  8. int main(int argc, const charchar * argv[]) {  
  9.       
  10.     //定义结构体类型  
  11.     struct Person  
  12.     {  
  13.         charchar *name;  
  14.         int age;  
  15.         double heigth;  
  16.     };  
  17.       
  18.     //初始化的4种方式  
  19.       
  20.     //1.定义的同时初始化  
  21.     struct Person p1 = {"zhangsan",20,170};  
  22.       
  23.     //2.先定义再逐个初始化  
  24.     struct Person p2;  
  25.     p2.name = "ykd";  
  26.     p2.age = 18;  
  27.     p2.heigth = 180;  
  28.       
  29.     //3.先定义再一次性初始化  
  30.     struct Person p3;  
  31.     p3 = (struct Person){"lisi",18,180};  
  32.       
  33.     //注意:结构体和数组在这里的区别,数组不能先定义再进行一次性初始化  
  34.     //结构体要明确的告诉系统{}中是一个结构体  
  35.       
  36.     //4.指定将数据赋值给指定的属性  
  37.     struct Person p4 = {.heigth=1.77.name="wangwu".age=33};  
  38.       
  39.       
  40.     //如何从结构体中取数据?  
  41.     printf("name=%s,age=%i,heigth=%f\n",p4.name,p4.age,p4.heigth); //name=wangwu,age=33,heigth=1.770000  
  42.       
  43.       
  44.     return 0;  
  45. }  

你可能感兴趣的:(结构体的4种初始化方式)