linux c結構體學習

2021-08-10 13:26:05 字數 882 閱讀 9155

#includestruct weaponweapon_1;//下面宣告變數的寫法這種類似,這種將weapon_1放在結構體後面宣告只適用於小型系統,如果是單個結構體可以使用struct{}weapon_1的寫法進行定義
int main()

;//宣告變數,定義變數

printf("%s\n,%d\n",weapon_1.name,++weapon_1.price}//可以輸出結構體的當中的名稱,**

struct weapon *w;

w=&weapon_1;//指向weapon_1

printf("name=%s\n",w->atk); //也可以w->name或者weapon_1.name.三者效果相同

struct weapon weapon_2[2]=;//結構體陣列,如果數量大可以使用結構體陣列

printf("%s\n%d\n",weapon_2[0].name,weapon_2[1].atk);//列印weapon2的第乙個陣列的name,和第二個陣列的atk

struct weapon *p;

p=weapon_2;//其實就是指向weapon_2[0]

p++;//指向weapon_2[1] 

printf("%s\n",p->name);輸出weapon_2[1]的name

return 0;

Linux C語言結構體

1.展開標頭檔案 作用 2.進行巨集替換 字串替換 3.預處理階段不考慮c的語法的 下面這句經過處理後 i檔案 tni不會被替換成int的。typedef int tni typedef int p p q null 等同於int q null typedef 有乙個作用域。2.結構體初始化和引用 ...

linux c學習 預處理和結構體

c語言提供多種預處理功能,主要處理 開始的預編譯指令,如巨集定義 define 檔案包含 include 條件編譯 ifdef 等 以 開頭的都是預處理命令 條件編譯是c語言中預處理部分的內容,它是編譯器編 時最先處理的部分,條件編譯裡面有判斷語句,如 if,else,endif。它的意思是如果巨集...

Linux C 10 結構體和共用體

在實際生活中,有大量的由不同性質的資料構成的實體,如通訊錄就是由姓名 位址 號碼等資訊組成。對於這種實體,用陣列是難以描述的,因此,c語言提供了一種被稱為結構體造型資料型別,結構體型別為處理複雜資料型別提供了便利手段。結構體與陣列類似,都是有若干分量組成的,與陣列不同的是,結構體的分量可以是不同型別...