1. 程式人生 > >結構體的4種初始化方式

結構體的4種初始化方式

[objc]  view plain  copy
  1. //  
  2. //  main.c  
  3. //  C語言學習  
  4.   
  5.   
  6. #include <stdio.h>  
  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. }