空格符不允许出现在预处理指令中?
在读c++ primer时,看到这样一句话:
“在写c++程序时,大部分出现空格符的地方可用换行符代替。这条规则的一个例外是字符串字面值中的空格符不能用换行符代替。另一个例外是空格符不允许出现在预处理指示中。”
空格符怎么会不允许出现在预处理指令中呢?应该是换行符吧?
笨人菜鸟一只,勿笑啊,鼓励为主,鼓励为主。嘻嘻~~
[解决办法]
意思是预处理中会以第一个空格之后的内容替换第一个空格之前的内容吧?
[解决办法]
Preprocessing directives,中文“预处理指示”。宏定义是其中的一种,其他的也不能包含空格,说预处理指示更全面,更正确。
[解决办法]
White space can appear within a preprocessing
token only as part of a header name or between the quotation characters in a character literal or string
literal.
[解决办法]
就是说你要定义一个叫SCREEN WIDTH的宏是不行滴:
#define SCREEN WIDTH ---> bad
#define SCREEN_WIDTH