【正文】
% d \ n ,_ line _ ) ; /* 行號102 */} pragma 命令pragma 為實現(xiàn)時定義的命令,它允許向編譯程序傳送各種指令。例如,編譯程序可能有一種選擇,它支持對程序執(zhí)行的跟蹤??捎?p r a g m a語句指定一個跟蹤選擇。 預定義的宏名 A N S I標準說明了五個預定義的宏名。它們是: _line __ F I L E _ _ D A T E _ _ T I M E _ _ S T D C _ 如果編譯不是標準的,則可能僅支持以上宏名中的幾個,或根本不支持。記住編譯程序也許還提供其它預定義的宏名。 _ line _及_ F I L E _宏指令在有關 line的部分中已討論,這里討論其余的宏名。 _ D AT E _宏指令含有形式為月/日/年的串,表示源文件被翻譯到代碼時的日期。 源代碼翻譯到目標代碼的時間作為串包含在_ T I M E _中。串形式為時:分:秒。 如果實現(xiàn)是標準的,則宏_ S T D C _含有十進制常量1。如果它含有任何其它數(shù),則實現(xiàn)是非標準的。 注意:宏名的書寫由標識符與兩邊各二條下劃線構(gòu)成。 注釋 在C語言中,所有的注釋由字符/ *開始,以* /結(jié)束。在星號及斜杠之間不允許有空格。編譯程序忽略注釋開始符到注釋結(jié)束符間的任何文本。例如,下面程序在屏幕上只打印 “h e l l o”。main (){p r i n t f ( hello ) ;/*printf (This is a sample to print hell;o*/)} 注釋可出現(xiàn)在程序的任何位置,但它不能出現(xiàn)在關鍵字或標識符中間。 即,注釋x=10+ /*add the numbers */ 5;是有效的,但swi/* this will not work */tch(c){... 是不正確的,因為C的關鍵字不能含有注釋。通常也不希望表達式中間出現(xiàn)注釋,因為這會使意義含混不清。 注釋不可嵌套,即一個注釋內(nèi)不可含有另一個注釋。例如,下面代碼段在編譯時出錯:/*this is an outer mentx = y / a ;/*this is an inner ment and causes an error */* / 當需要解釋程序的行為時,注釋應簡明扼要。除了最簡單和最直觀的函數(shù)外,都應有注釋,在函數(shù)開始處說明其功能,如何調(diào)用以及返回何處。 【