我在两本著名的 c 书籍中发现了两件不同的事情,第一件是“形式参数不会在宏扩展中被引用的字符串替换” - 由 K&R c 语言第 76 页
第二个是代码,
#define PRINT(var,format) printf("variable is %format\n",var)
PRINT(x_var,f);
稍后的宏调用将扩展为
printf("x_var is %f\n",x_var);
- 这是通过第 448 页的 ansi c - E. balagurusamy 编程。
当然,两个引文相互矛盾。据我所知,第一个是真的,我的编译器给了我这样的结果。但第二本书也广为人知。我想知道以前版本的 c 中是否有这样的东西,或者第二次引用是错误的。