C语言-预处理指令(Preprocessing Directive)-宏定义

时间:2022-02-02 01:11:38
一、宏定义
define 标识符 字符串

例:

#define PI 3.1415926
作用:制定的标识符PI来代替“3.1415926”,在进行预处理的时候,出现的所有“PI”都用“3.1415926”代替。
将一个简单的名字代替一个长的字符串,把这个标识符称为“宏名”;在预处理时将宏名替换成字符串的过程称为“宏展开”。

宏名通常用大写字母表示,以宏名代替一个字符串,可以减少程序中重复书写某些字符串的工作量。

例:

#define ARRAY_SIZE 1000
Int array[ARRAY_SIZE]; //宏展开:array[1000];

指定array的数组大小为1000,如果要改变数组的大小,只须修改#define行,
例:

define ARRAY_SIZE 500 

注意事项:
1)宏定义不是C语句,不必再行末加分号

2)#define 指令出现在程序中的函数外面,宏名的有效范围为该指令行起到本源文件结束。通常,#define指令写在文件开头,函数之前,作为文件一部分,在整个文件范围内有效。

#define PI 3.1415926;
area=PI*r*r; //展开后area=3.1415926;*r*r;