預處理指令:
1.#include 包含乙個文字檔案的內容
2.#define 定義巨集
3.#undef 取消先前定義的某個巨集
4.#if 如果條件滿足執行指定動作
5.#ifdef 如果已經定義了某個巨集,執行指定動作
6.#ifndef 與#ifdef相反,如果沒有定義某個巨集,執行指定動作
7.#else 如果先前的#if、#ifdef或ifndef不成立,執行指定動作
8.#endif 作為#if、#ifdef或#ifndef的結束標誌
9.#elif 也就是else-if的意思,用於#if-#else的巢狀
10.#line 設定當編譯器發出警告或錯誤資訊時所使用的行號
11.#erro 指定編譯期間的錯誤及對應資訊
12.#pragma 給編譯器提供實現細節資訊
13.# 忽略此行
一些有用的系統標頭檔案
1.ctype.h 測試和修改字元函式
關於字元型別的標頭檔案操作
tolower() 轉換成小寫
toupper() 轉換成大寫
isalpha() 測試字母
islower() 測試小寫
isupper() 測試大寫
isalnum() 測試大寫或小寫
iscntrl() 測試控制符
isprint() 可列印字元包括空格
isgraph() 可列印字元不包括空格
isdigit() 是十進位制數(0-9)
isxdigit() 十六進製制基數
isblank() 標準空白字元(空格,\t)
isspace() 空格字元(空格,\t,\v,\r,\n,\f)
ispunct() isspace()&isalnum()返回false的可列印字元
2.float.h 描述區域性浮點數狀態
在float.h中定義的部分常量 borland c++中的值
flt_dig float型的有效位個數 6
dbl_dig double型的有效位個數 15
ldbl_dig long double型的有效位個數 19
flt_epsilon float 型的最小正數x,滿足1.0+x!=1.0 1.9209290e-07
dbl_epsilon double型的最小正數x,滿足1.0+x!=1.0 202204460492503131e-19
ldbl_epsilon long double 型的最小正數x,滿足1.0+x!=1.0 1.084202172485504e-19
flt_max float型的最大值 3.40282347e38
dbl_max double型的最大值 1.797693134862316e308
ldbl_max long double型的最大值 1.18973149535723e4932
flt_max_10_exp float型允許的10為底的最大指數 38
dbl_max_10_exp double型允許的10為底的最大指數 308
ldbl_max_10_exp long double型允許的10為底的最大指數 4932
3.limits.h 描述區域性整數狀態
schar_min 乙個signed char型量的最小值(下面類似)
schar_max
uchar_max
char_min
char_max
shrt_min
shrt_max
ushrt_max
int_min
int_max
uint_max
long_min
long_max
ulong_max
4.math.h 數學函式
abs int型數值的絕對值
fabs float型數值的絕對值
labs long 型絕對值
log 以e為底
log10 以10為底
pow x^y
rand 產生隨機數
sqrt 平方根
srand 初始化隨機數發生器
exp e的x次方
sin 正弦
costan
sinh 雙曲正弦
cosh
tanh
acos 反余弦
asin
atan
atof 字串轉double型數值
atoi 字元竄轉int型數值
atol 字串轉long型數值
ceil 上限
floor 下限
5.setjmp.h 非區域性的轉移,包含了異常訊號的巨集定義
6.signal.h 異常處理
巨集sigabrt 非正常的終止
sigint 中斷
sigill 非法的指令
sigfpe 非法的算術指令
sigsegv 訪問非法的儲存單元
sigterm 請求程式終止
sig_dfl 當捕獲乙個指定的異常訊號時終止程式
sig_ign 忽略乙個指定的異常訊號
7.stdarg.h 引數數量不固定的函式
8.stdio.h 輸入輸出
9.string.h 字串處理函式
參考10.time.h 時間函式
CSharp C 語言 C 中的「預處理指令」
源 指定了程式的定義,預處理指令 preprocessor directive 指示編譯器如何處理源 例如,在某些情況下,我們可能希望編譯器忽略一部分 而在其他情況下,我們可能希望 被編譯。預處理指令給了我們這樣的選項。在c和c 中有實際的預處理階段,此時預處理程式遍歷源 並且為之後的編譯階段準備文...
C 語言的預處理器指令
c 語言的預處理器指令 一 if if 使您可以開始條件指令,測試乙個或多個符號以檢視它們是否計算為 true。如果它們的計算結果確實為 true,則編譯器將計算位於 if 與最近的 endif 指令之間的所有 以 if 指令開始的條件指令必須用 endif 指令顯式終止。例如 define deb...
關於extern C 和 一些常見預處理命令
詳細內容可以參考 關於extern c 詳細剖析 在一些標頭檔案中經常見到這些語句 ifdef cplusplus 注意,是兩個下劃線 extern c endif 我們知道這段 是在c 呼叫c 的時候使用的,作用是讓c 和c 相容,防止編譯報錯 一般是鏈結錯誤,找不到某某函式。可以多問幾個為什麼,...