B)在源文件的壹行上可以有多條預處理命令
C)宏名必須用大寫字母表示
D)宏替換不占用程序的運行時間
答案:D
評析:通常,預處理命令位於源文件的開頭,也可以寫在函數與函數之間;不能在壹行上寫多條預處理命令:宏名壹般習慣用大寫字母表示,以便與變量名相區別,但這並非規定,也可用小寫字母。
預處理命令是以#號開頭的代碼行,每壹條預處理命令必須單獨占用壹行,由於不是C的語句,因此在結尾不能有分號“;”。
宏被定義後,其作用域壹般為定義它的文件,通常#define命令寫在文件的開頭,但這也並非規定,實際上宏定義可以出現在程序的任何地方,但必須位於引用之前。