預處理基礎知識

2021-10-24 17:46:41 字數 951 閱讀 5306

預處理符號

__file__

: 當前檔案的原檔案名字

__line__

: 檔案當前的行號

__data__: 檔案編譯的日期

__time__

: 檔案編譯的時間

__sdtc__: 如果編譯器準尋ansic,其值為1,否則未定義

#define巨集和#undef巨集

#define _(name) name	

// 定義乙個巨集定義

#undef _

// 移除乙個巨集定義

##和#

##將兩個字串鏈結起來

#將後面的當做字串處理

#define name(a,b) a##b

#define name(a) #a

編譯的過程

預處理->編譯->彙編->鏈結

預處理:gcc -e test.c -o test.i

編譯:gcc -s test.i -o test.s

彙編:gcc -c test.s -o test.o

鏈結生成可執行檔案

命令readelf nm objdump size

attribute():

attribute((unused))修飾乙個變數或者函式,當這個變數和函式未使用時不會在編譯時,提示warning,未使用的變數或函式

attribute((constructor))和attribute((destructor))

如果函式被設定為constructor屬性,則該函式會在main()函式執行之前被自動的執行;若函式被設定為destructor屬性,則該函式會在main()函式執行之後或者exit()被呼叫後被自動的執行。

c c 基礎知識 預處理指令彙總

預處理指令提供按條件跳過原始檔中的節 報告錯誤和警告條件,以及描繪源 的不同區域的能力。使用術語 預處理指令 只是為了與 c 和 c 程式語言保持一致。預處理器的主要作用就是把通過預處理的內建功能對乙個資源進行等價替換,最常見的預處理有 檔案包含,條件編譯 布局控制和巨集替換4種。b 檔案包含 b ...

讀書筆記 C 基礎知識溫習 預處理指令

include 檔案包含 最常見的用法是 include 標準庫標頭檔案 include 舊式的標準庫標頭檔案 include io.h 使用者自定義的標頭檔案 include file.h unix下的父目錄下的標頭檔案 include usr local file.h unix下的完整路徑 in...

事件處理基礎知識

您可以將事件視為 swf 檔案中發生的程式設計師感興趣的任何型別的事件。例如,大多數 swf 檔案都支援某些型別的使用者互動,無論是像響應滑鼠單擊這樣簡單的使用者互動,還是像接受和處理表單中輸入的資料這樣複雜的使用者互動。與 swf 檔案進行的任何此類使用者互動都可以視為事件。也可能會在沒有任何直接...