重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
#define命令是C语言中的一个宏定义命令,它用来将一个标识符定义为一个字符串,该标识符被称为宏名,被定义的字符串称为替换文本. 使用宏时是简单的代码段替换.
创新互联主要从事成都网站制作、成都做网站、外贸营销网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务浔阳,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108
#define <宏名> <字符串>
例: #define PI 3.
注:使用简单的宏定义可以定义一些常量,区分简单宏定义
和const valtype
的区别(优先使用const)
#define <宏名> (<参数表>) (<宏体>)
例: #define Max(a, b) ( (a)>(b) ? (a) : (b))
注:简单代码段使用宏函数比使用函数好,免去了函数调用的开销,提高运行效率
#if
和#ifdef
等编译命令及其后的条件,将源程序中的某部分包含进来或排除在外,通常把排除在外的语句转换成空行
#if 整型常量表达式1
程序段1
#elif 整型常量表达式2
程序段2
#elif 整型常量表达式3
程序段3
#else
程序段4
#endif
#ifdef 宏名
程序段1
#else
程序段2
#endif
#define
的功能,由预处理器来完成,这里是单纯的替换与展开#ifndef INCLUDE_NAME_H
#define INCLUDE_NAME_H
//头文件内容
#endif
#,##,#@
#define Conn(x,y) x##y
#define ToChar(x) #@x
#define ToString(x) #x
x##y
表示x连接y, 如int n = Conn(123,456); // 结果就是n=;
#@x
表示给x加单引号, 如char a = ToChar(1); //结果就是a='1';
#x
表示给x加双引号, 如std::string str = ToString(); //结果就是std="";