如何在字符串上使用C预处理器?
预处理器可用于使用#define将某些关键字替换为其他单词.例如,我可以执行#define name“George”,每次预处理器在程序中找到“name”时,它将用“George”替换它.
但是,这似乎只适用于代码.我怎么能用字符串和文本做到这一点?例如,如果我在屏幕上打印“Hello I am name”,我希望’name’替换为“George”,即使它是在字符串而不是代码中. 我不想手动搜索字符串中的关键字,然后替换它们,而是想要使用预处理器来切换单词. 这可能吗?如果是这样的话? 我正在使用C但C解决方案也是可以接受的. 解决方法#define name "George" printf("Hello I am " name "n"); 相邻的字符串文字在C和C中连接. C和C标准引用: 对于C(引用C99,但C11在6.4.5p5中有类似的东西):
对于C:
编辑:根据要求,添加C和C标准的引号.感谢@MatteoItalia提供的C 11报价. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |