以下选项中的编译预处理命令行,正确的是

admin2020-10-26  30

问题 以下选项中的编译预处理命令行,正确的是

选项 A、#define  PI     3.14
B、##define  eps   0.001
C、#DEFINE  TRUE
D、#define  int    INT

答案A

解析 不带参数的宏定义是用一个指定的标识符来代表一个字符串,其一般形式如下:#define 宏名 替换文本。需要注意:(1)在#define、宏名和替换文本之间用空格隔开,(2)在C程序中,宏定义的定义位置一般写在程序的开头;(3)宏名一般用大写字母表示,便于与变量名区别;(4)宏定义是用宏名来表示一个字符串,在宏展开时以该字符串取代宏名,这只是一种简单的代换,预处理程序对它不做任何检查;(5)宏定义不是语句,在行末不加分号,如加上分号则连分号也一起替换:(6)宏定义必须写在函数之外,其作用域为从宏定义命令起到源程序结束,如要终止其作用域可使用#undef命令。B选项define前多了一个#,错误。C选项缺少"替换文本",错误。D选项"宏名""替换文本"位置反了,不能将一个自定义标识符宏定义为关键字,D选项错误。本题A选项宏定义正确。
转载请注明原文地址:https://jikaoti.com/ti/BdD0FFFM
0

最新回复(0)