__func__ 函数名/非标准 __FUNC__ 函数名/非标准 __PRETTY_FUNCTION__ 更详细的函数信息/非标准 4、预定义命令-条件式编译 函数 说明 #ifdef DEBUG 是否定义了DEBUG宏 #ifndef DEBUG 是否没有定义DEBUG宏 #if MAX_N == 5 宏MAX_N是否等于5 #elif MAX_N == 4 否则宏MAX_N是否等于4 #else #endif...
参考这里Concatenation#include//宏定义#defineGET_NAME(x)#xvoidfun0(){;}intmain(){//获取name==...
#define<宏名><字符串>例:#definePI 3.1415926 注:使用简单的宏定义可以定义一些常量,区分简单宏定义和const valtype的区别(优先使用const) 带参数的宏定义(宏函数) #define<宏名>(<参数表>) (<宏体>)例:#defineMax(a, b) ( (a)>(b) ? (a) : (b)) 注:简单代码段使用宏函数比使用函数好,免去...
Word使用宏语言Visual Basic将宏作为一系列指令来编写。 Excel办公软件自动集成了“VBA”高级程序语言,用此语言编制出的程序就叫“宏”。 三、#define定义常量用法 ①宏常量 我们最常使用到的#define的用法就是用#define来定义一个符号常量,而要修改时,只需修改#define这条语句就行了,不必每处代码都修改 ...
这还是定义的宏函数SUM(x)吗?显然不是。编译器认为这是定义了一个宏:SUM,其代表的是(x) (x)+(x)。 为什么会这样呢?其关键问题还是在于SUM 后面的这个空格。所以在定义宏的时候一定要注意什么时候该用空格,什么时候不该用空格。这个空格仅仅在定义的时候有效,在使用这个宏函数的时候,空格会被编译器忽略掉。
其作用是:将宏定义中的传入参数名转换成用一对双引号括起来参数名字符串。其只能用于有传入参数的宏定义中,且必须置于宏定义体中的参数名前。 如: #define example(instr) printf("the input string is:/t%s/n",#instr) #define example1(instr) #instr ...
(1) 简单的宏定义 格式:#define <宏名/标识符> <字符串> eg:#define PI 3.1415926 说明: ①宏名一般用大写 ②宏定义末尾不加分好; ③可以用#undef命令终止宏定义的作用域 ④宏定义可以嵌套 ⑤字符串“”中永远不包含宏 ⑥宏替换在编译前进行,不分配内存,变量定义分配内存,函数调用在编译后程序运行时进行,...
__func__:它指示所在的函数 __assert_perror_fail:打印一条包含错误码ERRNUM的错误消息,并终止程序 1. 2. 3. 4. 5. 6. 7. 8. 9. 五、反斜杠的作用 反斜杠起到换行作用,用于宏定义和字符串换行。其中宏定义中使用居多。如果一行代码有很多元素,导致太长影响阅读,可以通过在结尾加\的方式,实现换行,编...
函数宏定义的格式为:`#define 函数名 (参数类型 参数名) 函数体` 其中: - `函数名`:宏定义的函数名,需要符合 C 语言的命名规则。 - `参数类型 参数名`:函数的参数,参数类型和参数名之间用空格隔开,多个参数用逗号分隔。 - `函数体`:函数的实现,可以是一行或多行代码。 3.函数宏定义的实例 下面是一个...