“注釋”是字元序列由編譯器将一個空白字元和否則将忽略的一個正斜杠/星号組合 (/*) 開頭。 注釋可以包括任何字元組合可以從可用的字元集的,包括換行符,但是,排除 “結束注釋”分隔符 (*)。 注釋占用多個行,但不能嵌套。
注釋可以顯示任何位置空白字元授權。 因為編譯器将注釋作為一個空白字元,不能包括在标記中的注釋。 編譯器忽略在注釋的字元。
使用文檔注釋代碼。 此示例是編譯器接受的注釋:
/* Comments can contain keywords such as
for and while without generating errors. */
注釋可以出現在行和代碼語句相同:
printf( "Hello\n" ); /* Comments can go here */
可以選擇在函數或具有描述性注釋的程式子產品塊:
/* MATHERR.C illustrates writing an error routine
* for math functions.
*/
因為注釋不能包含嵌套的注釋,此示例導緻錯誤:
/* Comment out this routine for testing
/* Open file */
fh = _open( "myfile.c", _O_RDONLY );
.
.
.
*/
,因為編譯器在運作 Open file後識别第一 */,,作為注釋,結束該錯誤。 ,當找到在注釋時,的 */ 它嘗試處理剩餘的文本會産生錯誤。
可以使用注釋僅為測試目的時使某些代碼行非活動,預處理器指令 #if 和 #endif 和條件編譯。此任務的有用的替代方法。 有關更多資訊,請參見 " 預處理器的
預處理器指令引用。
Microsoft 專用
Microsoft 編譯器還支援兩個正斜杠的單行注釋 (//) 之後。 如果使用 /Za 編譯。 (ANSI 标準),這些注釋生成錯誤。 這些注釋不能擴充到第二行。
// This is a valid comment
從兩個正斜杠 (//) 開頭的注釋由一個不在轉義字元後面的下一個換行符停止。 在下一個示例中,換行符的反斜杠 (\) 之後,建立 “轉義序列”。為上一行的一部分,此轉義序列導緻編譯器将下一行。 (有關更多資訊,請參見
轉義序列。)
// my comment \
i++;
是以, i++; 語句批注。
Microsoft C 的預設值為 Microsoft 擴充啟用。 使用 /Za 禁用這些擴充。
引:http://msdn.microsoft.com/zh-CN/library/vstudio/wfwda74e.aspx
網名:浩秦;
郵箱:root#landv.pw;
隻要我能控制一個國家的貨幣發行,我不在乎誰制定法律。金錢一旦作響,壞話隨之戛然而止。