【废话一堆】
嗨害嗨,家人们,我又双叒叕回来啦!
今天讲define和undef指令,话不多说,开始!
【define】
define指令分为两种
1.无参数
2.有参数
首先来讲讲无参数
它的使用方法如下:
[C] 纯文本查看 复制代码 #define 变量名 常量
例如这样:
[C] 纯文本查看 复制代码 #define x64JuRuo "I love x64"
来编译运行一下(printf输出x64JuRuo)
[C] 纯文本查看 复制代码 #include <stdio.h>
#define x64JuRuo "I love x64"
int main(int argc, char** argv)
{
printf("%s", x64JuRuo);
}
输出:I love x64
接下来讲讲有参数的宏定义
其格式如下:
[C] 纯文本查看 复制代码 #define 变量(变量1,变量2,...) 运算公式/代码
例如,我们想写一个计算加法的函数,有两种方法:
第一种:
[C] 纯文本查看 复制代码 #include <stdio.h>
long add(long a, long b)
{
return a + b;
}
肯定没人发现我叒改括号的位置了
第二种:
[C] 纯文本查看 复制代码 #include <stdio.h>
#define add(a,b) a+b
int main(int argc, char** argv)
{
printf("%d", add(114, 514));
}
输出:
628
这就是带参数的宏定义
【undef】
undef的作用是停止宏的作用率,使用方法如下:
举个例子(详情看注释)
[C] 纯文本查看 复制代码 #include <stdio.h>
#define x64JuRuo "I love x64" //定义常量
int main(int argc, char** argv)
{
printf("%s", x64JuRuo); //输出x64JuRuo
#undef x64JuRuo //停止作用域
printf("%s", x64JuRuo); //报错了,未定义的标识符
}
学会了吗?
|