C语言 #define N 10 是什么意思 初学者不懂 请大神详解

2025-04-03 13:24:33
推荐回答(2个)
回答1:

这是一个宏定义,是预编译命令中的一种,意思是用“N”这个字符常量来表示“10”这个字符,以后凡是出现N的地方系统自动用10替换,记住这里的“10”仅代表一个字符,假如需要用于数学计算,系统会自动进行类型转换。。。
准确来说“#define
n
10”不是n=10的意思,
而是用10替换掉n,这是有区别的。
例如:
#include
#define
N
a+b
void
main()
{
int
a=1,b=2;
printf
("%d",N*5);
}
输出的是11,而不是15。
又例如:
#include
#define
N
(a+b)
void
main()
{
int
a=1,b=2;
printf
("%d",N*5);
}
输出的才是15。

回答2:

建立一个宏,名字是N,内容是10
就是说你以后程序里出现的所有单独的N都会被替换为10
可理解为一种特殊的变量
例子:
#define
N
10
#define
a
5
#include
int
main(void){

printf("%d
%d
%d",N,a,N+a);

return
0;
}
输出结果:
10
5
15