C 註解
「註解」是一個以正斜線和星號組合 (/*) 為開頭的字元序列,編譯器會將其視為一個空白字元或直接忽略。 註解可以包含可表示字元集的任何字元組合,其中包括新行字元,但不包括「結尾註解」分隔符號 (*/)。 批註可以佔用一行以上,但不能巢狀化。
註解可以出現在任何允許顯示空白字元的位置。 由於編譯器會將批註視為單一空白字元,因此您無法在權杖中包含批註。 編譯器會忽略註解中的字元。
使用註解來撰寫程式碼的文件。 下列範例為編譯器可接受的註解:
/* 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 編譯器也支援使用兩個正斜線的單行註解 (//
)。 這些批註無法延伸至第二行。
// This is a valid comment
開頭為兩個正斜線的批註 (//
) 會由未在逸出字元前面加上的下一個分行符號終止。 在下一個範例中,分行符號前面會加上反斜線 (\
) ,建立「逸出序列」。這個逸出序列會使編譯器將下一行視為上一行的一部分。 (如需詳細資訊,請參閱逸出序列)。
// my comment \
i++;
因此,i++;
陳述式會標記為註解。
Microsoft C 預設會啟用 Microsoft 擴充功能。 使用 /Za 可停用這些擴充功能。
END Microsoft 特定
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應