我写了这个小程序,希望放置这些值,它会看到输出,但是我得到一个错误:
D:\ C Programming \ token-pasting.c ||在函数'main'中:| D:\ C编程\ token-pasting.c | 6 |错误:'Hell23'未声明(首次使用此功能)| D:\ C编程\ token-pasting.c | 6 |注意:每个未声明的标识符仅针对它出现的每个函数报告一次。 || ===构建完成:1个错误,0个警告(0分0秒)=== |
#include <stdio.h>
#define swap(front, back) front##back
main()
{
swap(Hell, 23) ;
return 0;
}
答案 0 :(得分:0)
有一百万种方法可以打印“hell21”,仍然需要上下文。抛弃你的“交换”宏......
char *str = "hell";
int x = 21;
printf("%s%d", str, x);
%s
表示用字符串数组替换printf的那一部分,%d
表示用整数替换printf的那部分。