語法差異
* C語言沒有string
* 宣告變數名稱相同,需用「extern」,在進行宣告的編譯單位以外也可執行
格數化輸出函數printf()
* int :
1. %d 十進位
2. %o 八進位
3. %x 十六進位
4. %u unsign
5. %l long int
* float :
1. %f
2. %e 指數
* double :
1. %lf
* char :
1. %c char
2. %s string
* address :
1.%p 輸出位址
* 其他 :
1. %- 靠左對齊
2. %dd 指定欄位寬
Ex:%12,表示最少12個欄位
3. %. 分隔欄寬
Ex:%4.3f,最少4個欄位取三位小數
4. *.* 指定浮點數之精確度
Ex:%0*.*f,8,4,變數,最少8欄位取4小數,其中8與4不能不寫
格式化輸入函數scanf()
int x;
float y;
char z;
scanf("%d %f %c",&x,&y,&z);
scanf它不能接受變數名,必須給它變數的地址
鍵入Ctrl+D,scanf()狀態為EOF也就是-1
要輸入char,用getchar()較好
for 迴圈的變數需先宣告
前置處理器
#if .... #elif .... #else .... #endif
#define 用來定義 ; #undef 用來消除定義
#ifdef (#ifndef) .... #else .... #endif
ifdef:如果有定義;反之,ifndef
static function
只於該文件才看得到,若多個檔案編譯,不會被其他檔案使用到