[英]Use another char than # in preprocessor directives
在定义预处理器指令时,有没有办法使用#
以外的其他字符? 例子:
代替:
#if 1
foo
#endif
使用?
, 例如:
?if 1
foo
?endif
存在用于替换某些字符的三字母序列。 特别是, #
字符可以替换为??=
。 所以下面的代码是有效的:
??=if 1
foo
??=endif
但是,您不能随意替换。
您有两个选择:
??=if 1
%:if 1
这两个都是 100% 标准 C,但同时被认为是非常糟糕的做法。 然而,主流编译器倾向于警告三合字母而不是二合字母,所以二合字母可能是较小的邪恶。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.