在C語(yǔ)言中,可以使用#define
關(guān)鍵字進(jìn)行宏定義。定義一個(gè)宏的一般語(yǔ)法如下:
#define MACRO_NAME value
其中MACRO_NAME
是宏的名稱,value
是宏的值。例如,定義一個(gè)宏來(lái)表示常量PI
:
#define PI 3.14159
在程序中,可以通過(guò)宏名稱來(lái)引用宏的值。例如:
#include <stdio.h>
#define PI 3.14159
int main() {
printf("The value of PI is: %f\n", PI);
return 0;
}
在這個(gè)例子中,PI
宏會(huì)在編譯時(shí)被替換為其定義的值3.14159
,輸出結(jié)果為The value of PI is: 3.141590
。
宏定義還可以帶參數(shù),例如:
#define SQUARE(x) ((x) * (x))
這里定義了一個(gè)帶有一個(gè)參數(shù)x
的宏SQUARE
,用來(lái)計(jì)算一個(gè)數(shù)的平方。在程序中使用該宏:
#include <stdio.h>
#define SQUARE(x) ((x) * (x))
int main() {
int num = 5;
printf("The square of %d is: %d\n", num, SQUARE(num));
return 0;
}
在這個(gè)例子中,SQUARE(num)
會(huì)在編譯時(shí)被替換為(num) * (num)
,輸出結(jié)果為The square of 5 is: 25
。