#号运算符

在宏定义中经常会用到#和##
1、单井号(#):把传递过来的参数当成字符串进行替代
如下示例:
程序代码#define display(name) printf(""#name"")
int main() {
display(name);
}
输出:name
2、双井号(##)是宏定义中的连接符,就是把前后两个参数连接在以起,这个在实际应用中一般碰不到,不排除考试和面试中出现 。

 

#include<iostream>#define link(a,b) a##busingnamespace std;int main(){int x=2,y=3,xy=10;
    cout<<x<<y<<link(x,y);//经过预处理后,link(x,y)已被替换成xy了return0;}

输出结果为:2310

 

转自:http://blog.csdn.net/sszgg2006/article/details/7887523

posted @ 2014-03-14 11:23  codeartistry  阅读(307)  评论(0编辑  收藏  举报