C/C++中未保留的字符

las*_*gar 0 c c++ parsing

我需要<在C/C++代码文件中编码所有出现的字符.为了防止冲突,我需要知道C/C++标准中没有保留哪些字符.例如,如果$没有保留,我可以暂时编码<,$然后恢复原始的C/C++代码.

我需要使用类似XML的中间语言对我的C/C++代码进行编码.

提前致谢.

Pub*_*bby 5

而不是列出未保留的字符(有无限),这里是标准2.3.1中的保留字符:

space, horizontal tab, vertical tab, form feed, new line
a through z
A through Z
0 through 9
_ { } [ ] # ( )  % : ; . ? * + - / ^ & | ~ ! = , \ " '

  • 这个答案的问题在于它是错误的.它列出了一个实现_required_直接支持的最小字符集(即使这样,也可以使用三字符来避免其中的一些).其他字符可以通过通用字符名称指定,实现可以直接接受它们.(例如,我所知道的所有实现都接受``@ $'`,并且至少有一个接受像`àéç`这样的符号.) (2认同)