#define n 5和int n=5有什么区别?
来源:百度知道 编辑:UC知道 时间:2024/07/02 19:15:22
RT
#define n 5 :n在函数里一直等于5,是常量.
int n=5 :n是变量,在函数里可以重新赋值。
#define是宏定义的意思
宏定义是用宏名来表示一个字符串,在宏展开时又以该字符串取代宏名,这只是一种简单的代换,字符串中可以含任何字符,可以是常数,也可以是表达式,预处理程序对它不作任何检查。如有错误,只能在编译已被宏展开后的源程序时发现。
宏定义不是说明或语句,在行末不必加分号,如加上分号则连分号也一起置换。
宏定义其作用域为宏定义命令起到源程序结束。如要终止其作用域可使用#undef命令。
#define n 5 :n在函数里一直等于5.
而int n=5 :n是变量,在函数里可以重新赋值。
#define n 5是一个宏定义,编译程序将宏定义的内容认为是字符串,没有任何实际的物理意义,而只做替代,即将5替换n;int n=5表示整型变量的初始化,即将整数5赋给n;前者的n替换为5是固定不变的,后者的n在程序中可变。
前者是宏定义,是常量,一般都是数据比较复杂时用,如#define n 3.141592,以后3.141592就可以用n代替,后者n是变量,可以进行各种运算,如n=n++后,n=6
#define n 5是宏定义,在编译时候完成,实现简单替换,遇到n就变成5
int n=5 是变量初始化。在程序运行时完成,实现对变量的初始化工作,其值可以改变。
define elemtype int是什么意思
#define WXF_V6_FIX 有没有这样定义的呢 ?标准的好象是#define N 5
#define MAX(x,y) (x)>(y)?(x):(y) main(){int a=5,b=2,c=3,d=3,t;t=MAX(a+b,c+d)*10;printf("%d\n",t);}
5.请编写函数void fun(int x,int pp[],int *n)
#define a 3与int a=3的区别
大家帮忙读读这句 #define LED *(int *)0xc0000
若int *p,m=5,n;正确的是( )
若x和n均是int型变量,且x和n的初值均为5,则执行下面表达式x+=n++ 后x的值为( ),n的值为( )
int *p和 int *p
问:Int(n/10)?