c/c++ #define中#和##运算符的使用
2017-09-03 21:11
232 查看
1.在#define中使用参数
函数调用和宏调用之间的重要差异,程序运行时,函数调用把参数的值传递给函数。而编译前,宏调用把参数的语言符号传递给程序。2.#运算符:利用宏参数创建字符串
如果x是一个宏参数,那么#x可以把参数名转换为相应的字符串,该过程称为字符串化。#include <stdio.h> #define POUT(x) printf("---" #x "---\n") int main() { POUT(Test_Define_# .); return 0; }
---Test_Define_# .---
3.##运算符:预处理器的粘合剂
这个运算符把两个语言符号组合成单个语言符合。#include <iostream> #define INT(x) nTmp##x int main() { int INT(1) = 0; std::cout<<INT(1)<<std::endl; return 0; }
0
相关文章推荐
- C++中四种类型转换运算符的使用方法
- C++中四种类型转换运算符的使用方法
- C++中运算符New的三种使用方式
- C++按位异或运算符的使用介绍
- C语言学习11:typedef和define区别,头文件的使用以及 <>和“”区别,宏定义中#和##的用法,条件编译,gcc和c99中宏定义使用printf和sprintf,条件编译避免头文件包含
- C++之使用enum、inline替换define
- C++类型转换运算符的使用方法
- 【C++程序设计常见面试题】说出字符常量和字符串常量的区别,并使用运算符sizeof计算有什么不用?(00)
- C/C++中##与#的使用
- C/C++中##符号的使用
- C/C++中define的使用
- C与C++中的运算符使用
- C++中四种类型转换运算符的使用方法(reinterpret_cast,const_cast,static_cast,dynamic_cast)
- 【C++基础】类型转换运算符的使用方法(reinterpret_cast、 const_cast、static_cast、dynamic_cast)
- C++中四种类型转换运算符的使用方法
- C/C++基本数据类型所占字节数以及sizeof运算符的使用
- 分享:C++中四种类型转换运算符的使用方法
- C++中四种类型转换运算符的使用方法
- C++中的##使用
- C++中类型转换运算符的使用方法