學習筆記 Linux環境 C語言結構體

2021-09-27 07:35:01 字數 948 閱讀 6296

首先,我們需要明確的是,由.c檔案生成可執行檔案的過程中都會經歷哪些過程。

gcc -o xx.i xx.c -e為僅執行預處理的命令,預處理實際上是展開標頭檔案和巨集替換的過程。

例:#define pi 3.14

如上文所述,發生在預處理階段的巨集替換是單純的字串的替換(並沒有整型、浮點型等的概念)。

此外,還可以定義巨集函式。例如#define add(a,b) a+b,相對於一般的函式,它可以不考慮型別。

typedef用於給變數型別起別名,在預處理之後並不會被替換,一般的用於給自定義的資料型別起別名。

結構體是不同型別變數的集合,相比較於陣列(相同型別變數的集合)

struct student;
struct student = ;

int a = student.age;

此外,還可以定義結構體指標

struct student *s;

printf("name=%s\n",(*s).name)

//其中(*s).name等價於s->name

關鍵字為union,幾個變數共享同乙個記憶體位址,且公用體變數和成員位址為同一位址。

union data
union data data1; 

data1.a=10;

下面記錄乙個動態鍊錶的例程,仔細體會。

#include #include struct weapon;

struct weapon * create()

p2->next = null;

return (head);

}int main()

學習筆記 Linux環境 C語言開發基礎 1

熟練地掌握linux環境下的一些命令對今後的學習和工作都會有很大的幫助。最近學習了 linux c語言程式設計基本原理與實踐 作為對c語言和linux系統的回顧,記錄學習筆記如下。vim有很多快捷命令,能夠大大地提高工作效率。下面首先任意編寫乙個簡單的c程式main.c include int su...

學習筆記 Linux環境 C語言指標與記憶體

指令 功能l list 列出源 start 進行單行除錯 p列印某值 n繼續執行下一行 s進入函式內部 bt檢視函式堆疊 回車繼續剛才的命令 x 數字 型別 位址 輸出記憶體中的值,例如x 3d 位址 f 函式號 可檢視當前函式中的變數值 記憶體規劃 這裡只表示順序,未體現大小 系統核心 自由可分配...

Linux系統C語言開發環境學習

專案 內容作業所屬課程 作業要求 學號 姓名 17041507 陳偉騫 作業學習目標 學習linux系統c語言開發環境 檢視gcc版本資訊 檢視make版本資訊 通過vim編輯器編寫乙個最簡單的c語言程式,先建立乙個資料夾,然後進入剛建立的資料夾。我們輸入完了源程式,接下來我們進行c語言程式編譯的四...