#define N 15 是在什么情况下用的

来源:百度知道 编辑:UC知道 时间:2024/06/05 02:17:08

C/C++中的预处理宏,一般用来定义常量;也就是在程序运行过程中的不变量;

#define N 5 的意义实际是把代码中所有N出现的地方都换成数字5;常量的定义多用于表明数组大小,或者指定某一在代码中需要经常使用的不变量,如:

#define ARRAY_SIZE 10

int a[ARRAY_SIZE], i; // a数组大小被替换为10

for(i = 0; i < ARRAY_SIZE; ++i) // 又用到了SIZE
a[i] = i;

定义需要经常使用的常量还可以帮助人理解代码,避免“魔数”,而且易于管理和维护代码,如:

int a[10]; // magic number

............

如果代码很长,而且在下文的某处又要用到10这个数来定义其他的数组,获得数组a的元素个数或者打印数组元素的话,数字10的含义就变地不清楚了,比如:

for(i = 0; i < 10; ++i) // 10 is a magic number
{
......
}

所以最好的做法就是把经常需要使用到的常量给定义出来,这样不仅增强了代码的可读性,而且也使代码易于维护和管理,比如你根据需要在下文中需要修该常量来适应特定要求的话,比如改变数组的的大小,那么只就只需要修改:

#define SIZE 5为#define SIZE x(x是你想修改的数字)就可以了,而不用在代码中寻找每一处都使用过相应常量的地方而来逐个修改(查找和大多数情况下不能提供你所满意的操作)。

这是一个宏定义!
你可以在你的程序里的任何地方使用它

比如:
int user_input=0;
scanf("%d",&user_input);
if(user_input==N){
printf("ok!");
else
printf("error!&q