C语言中宏的作用域
1、定義
宏作用域:宏的可見范圍。
2、案列
souce code example:
#include <stdio.h> #include <stdlib.h> #include <strings.h> #include <string.h> #define PI (3.14) float calculate_area(float radius); void printf_infor1(void); void printf_infor2(void);void printf_infor2(void) { #ifdef PIprintf("PI = %f\n", PI); #endif #ifdef RADIUS printf("RADIUS = %d\n", RADIUS); #endif }int main(int argc, char* argv[]) {int ret = 0; #define RADIUS (10)float area=calculate_area(RADIUS);printf("area = %f\n", area);printf("call printf_infor1.....\n");printf_infor1();printf("call printf_infor2.....\n");printf_infor2();return ret; //#undef RADIUS }float calculate_area(float radius) {return (PI * radius * radius); }void printf_infor1(void) { #ifdef PIprintf("PI = %f\n", PI); #endif #ifdef RADIUS printf("RADIUS = %d\n", RADIUS); #endif }?result:
andy@andy-virtual-machine:~/GNU_C_Programming/unpakage_dir$ make Main_MACRO
cc ? ? Main_MACRO.c ? -o Main_MACRO
andy@andy-virtual-machine:~/GNU_C_Programming/unpakage_dir$ ./Main_MACRO?
square = 314.000000
call printf_infor1.....
PI = 3.140000
RADIUS = 10
call printf_infor2.....
PI = 3.140000
?
NOTE:
總結(jié)
- 上一篇: UVa1218完美的服务
- 下一篇: 区块链防守铁娘子和她的安全军团