您的位置:首页 > 编程语言 > C语言/C++

C语言中##和#argument预处理运算符

2015-06-18 10:09 281 查看
##预处理运算符 的作用是在宏定义中运算符中左右两边的符号连接成一个符号。

例如#define CON(a,b) a##b

CON(5,3)就表示是53 CON(a,3)就表示是a3

下面看一下实例

源码如下

#include<stdio.h>

#include<stdlib.h>

#define CON(a,b) a##b

int main(void)

{

int a;

int a1 = 1;

int a2 = 2;

int a3 = 3;

a = CON(2,5);

printf("a = %d\n",a);

printf("a1 = %d\n",CON(a,1));

printf("a2 = %d\n",CON(a,2));

printf("a3 = %d\n",CON(a,3));

system("pause");

return 0;

}

其运行结果如下图



#argument该结构的作用是在宏定义中将参数argument相对应的字符串”argument“

实例如下

代码:

#include<stdio.h>

#include<stdlib.h>

#define PRINT(pvalue,pformat) printf("The value of "#pvalue" is " pformat "\n" ,pvalue)

#define TOString(argument) #argument

int main(void)

{

int x = 5;

char a[20] = TOString(x+5);

printf("%s\n",a);

PRINT(x+3,"%d");

system("pause");

return 0;

}

运行结果如下图

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: