-
1.
查看全部 -
20161013 LinuxC語言結構體 2-1 預處理 gcc -o helloworld.i helloworld.c 執(zhí)行過程如下: .c文件 -> (預處理).i文件 ->(編譯) .s文件 ->(匯編).o文件 ->(鏈接)可執(zhí)行文件 gcc -o helloworld.i helloworld.c -E (只進行預處理,生成.i文件 ) 預處理: 1.展開頭文件(如 展開 include <stdio.h>的內容) 2.宏替換:本質就是發(fā)生在預處理的單純的字符串替換 注釋 宏定義: 就是常量,數組buffer。不以分號結尾 #define R 10(此處 10為字符串)
查看全部 -
.c文件(預處理) --> ?.i文件(編譯) -->.s文件(匯編) --> .o文件(鏈接)-->可執(zhí)行文件
查看全部 -
預處理->編譯->匯編->鏈接
查看全部 -
& 按位與
| 按位或
^ 按位異或
~按位取反
<<? 按位左移
>>按位右移
查看全部 -
w->name 可以替代(*w).name
查看全部 -
預處理之宏定義
預處理只typedef
查看全部 -
預處理階段宏定義不考慮C的語法
查看全部 -
預處理展開的頭文件
查看全部 -
gcc -o helloWorld.i helloWorld.c -E
-E表示只讓helloWorld.c進行預處理
查看全部 -
.c文件 -> .i文件? 預處理
.i文件->.s文件?? 編譯
.s文件->.o文件? 匯編
.o -> 可執(zhí)行文件? 連接
查看全部 -
.c文件? -> .i文件 -> .
預處理
查看全部 -
預處理階段不會進行運算,宏替換只是單純的字符串替換
查看全部 -
宏替換在預處理階段執(zhí)行,不考慮C的語法
查看全部 -
編譯的四個步驟
由C語言的文件生成一個可執(zhí)行的可執(zhí)行文件
gcc ? ? 對文件進行編譯
./a.out ? ?輸出可執(zhí)行文件
查看全部
舉報