C語言程式設計注意事項 sizeof和inline

2021-08-21 21:45:54 字數 486 閱讀 1055

sizeof屬於運算子。如果程式中執行sizeof(k++) 語句後,k值並不會加1

原因分析:可能是由於sizeof的計算是發生在編譯時刻吧。

inline函式應該放在標頭檔案中定義(.h檔案)

關鍵字inline必須與函式定義體放在一起

慎用內聯,雖然它有諸多好處

內聯包含迴圈或switch語句的函式常常得不償失

tip:只有函式在10行甚至更少時才將其定義為內聯函式

原因:濫用內聯可能使目標**量或增或減,這取決於內聯函式的大小。當內聯乙個相當大的函式將戲劇性的增加**大小。

問:為什麼要將inline函式放在標頭檔案中?

答:inline函式對編譯器必須是可見的,以便在呼叫點展開,與非inline函式不同,inline函式必須在呼叫該函式的每個檔案中定義。對應於同一程式的不同檔案,inline函式也必須相同。因此,把inline函式定義放在標頭檔案中,需要呼叫時只需包含標頭檔案即可,還能保證inline函式只有乙個定義。

C語言注意事項

1 fgetc與fputc函式 fgetc函式從指定的文 件中讀乙個位元組 fputc 函式向指定的檔案寫乙個位元組 2 r 是回車,n 是換行,前者使游標到行首,後者使游標下移一格。c語言程式設計時 windows系統 r 就是return 回到 本行 行首 這就會把這一行以前的輸出 覆蓋掉 如 ...

C語言注意事項

一 關於typedef與 define的相似之處 例如 typedef int count define count int 作用 都是用count代表int,但事實上,二者是不同的。define是在預編譯時處理的,只能作簡單的字串替換,而typedef是在編譯時處理的,並不是作簡單的字串替換,而是...

整理下sizeof注意事項

a 叫做字串常量 1.字串常量不能被賦值,同時字串常量不能對值修改 2.字串常量在記憶體中佔若干位元組 至少乙個字元結束標誌 佔位元組數等於字串中位元組數加一。在c語言中系統會在每個字串的最後自動加乙個 0 本身並不看作是字串的一部分 作為字串的結束標誌。如 hello 在記憶體中佔六個位元組。3....