a##b,在c语言中是什么运算?

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/27 08:00:30
a##b,在c语言中是什么运算?

a##b,在c语言中是什么运算?
a##b,在c语言中是什么运算?

a##b,在c语言中是什么运算?
a##b 实际上就是ab,但要注意实际的用法:
这应该算一个预编译的运算,在宏的定义中经常用到,比如为了和防止别人定义的变量冲突我们可以定义一个宏,使我们自己的变量都带一个my_前缀,宏定义如下:
#define MY_DECLARE(type,name)\
type my_##name;
读者可以看看下面的例子程序:
#include
#define MY_DECLARE(type,name)\
type my_##name;
void main(){
MY_DECLARE(int,a) // 实际上宏展开为:int my_a;
my_a=88;
printf("%d\n", my_a);
}