有的时候为了程序的通用性,可以使用#define预处理宏定义命令,它的具体作用,就是方便程序段的定义和修改。
举个例子吧,如果说你在做一个项目,这个项目的代码很长,有5000多行,而且基本上裏面的同一个常量N就占了3000多行,如果说今后你要是想对这个常量N的值进行修改,如果在程序的开始没有定义一个#define N,那么改起来不是很麻烦,3000多行啊,那不是要晕过去了~如果你事先定义了一个#define N ‘常量值’,那么当你要修改程序内部的常量值时,只要修改N后面的常量值就等于把程序内部的要修改的相同常量值都改了,那就很方便了
在程序执行期间其值可以改变的量称为变量,变量类型又分为系统变量和用户自定义变量,用户自定义变量其实和系统变量含义是一样的,在学到结构化编程的时候,你就会明白自定义变量的意思了。系统变量分为四种,int整形变量,用户存放整数的变量,占4个字节的大小;float单精度浮点型,就是存放小数点的数值,占4个字节大小;double高精度浮点型,相对float而言,double保畱的小数点位数更精确,占8个字节的大小;char字符变量,主要存放字母,占1个字节的大小
是定义的意思,将一个变量强制定义为你想要的值。如#define PI 3.14就是将PI的值定义成3.14,这样在程序里看到PI就可以替换成3.14了。
在程序执行期间其值可以改变的量称为变量,变量类型又分为系统变量和用户自定义变量。
用户自定义变量其实和系统变量含义是一样的,在学到结构化编程的时候,你就会明白自定义变量的意思了。
系统变量分为四种:
1、int整形变量;
2、用户存放整数的变量;
3、占4个字节的大小;float单精度浮点型,就是存放小数点的数值;占4个字节大小;double高精度浮点型,相对float而言,double保留的小数点位数更精确,
4、占8个字节的大小;char字符变量,主要存放字母,占1个字节的大小。
简单的define定义
#define MAXTIME 1000
一个简单的MAXTIME就定义好了,它代表1000,如果在程序里面写
if(i 编译器在处理这个代码之前会对MAXTIME进行处理替换为1000。 这样的定义看起来类似于普通的常量定义CONST,但也有着不同,因为define的定义更像是简单的文本替换,而不是作为一个量来使用,这个问题在下面反映的尤为突出。
#define是宏定义的意思
2. 宏定义是用宏名来表示一个字符串,在宏展开时又以该字符串取代宏名,这只是一种简单的代换,字符串中可以含任何字符,可以是常数,也可以是表达式,预处理程序对它不作任何检查。如有错误,只能在编译已被宏展开后的源程序时发现。
3.宏定义不是说明或语句,在行末不必加分号,如加上分号则连分号也一起置换。
4.宏定义其作用域为宏定义命令起到源程序结束。如要终止其作用域可使用#undef命令。
定义的意思,比如#define Size 5,这就定义了一个宏,Size在程序中就等于5,这样更改一个大量使用的值很方便,如:int a[Size]就和int a[5]一样
#define
让大师来用最简单的方法来回答,就是 定义一个可以替换的 东东比如说
#define A B
在程序中遇到A,A就变成B了
他还可以检讨的
比如#define A A,B
#define B A,B,C
B
把他占开就是 A B B C