热门搜索 :
考研考公
您的当前位置:首页正文

C 语言之宏定义与条件编译

来源:东饰资讯网

一. 宏定义

#define PI 3.141592653 //无参宏

#define SUM(a,b) a + b //有参宏与函数不一样

1. 调用PI时等同于获取数字3.141592653

2. 调用SUM(a,b)时,仅仅只为a + b不为函数

二. 条件编译

#ifdef PI

//#ifndef

//#ifdef

//#if 1

int sum(int a,int b) {

return a + b;

}

#else

//#elif xxx

int sum(int a,int b) {

return a * b;

}

#endif

#ifdef PI  //为如果定义过PI则执行以下代码

#ifndef PI  //为如果没有定义过PI则执行以下代码

#else  //如果为定义则执行下列代码

三. 所谓预编译即在代码编译之前执行的操作,预编译过程会做数据的准备和替换,为编译过程做准备.

四. 宏定义与条件编译的优点

宏定义的作用是在程序的预编译期进行整体替换,将宏定义的标志替换为其所替代的数据,宏定义有三大好处:1.提高代码可读性; 2.方便书写; 3.方便对数据做修改,如果数据产生变化,仅需要修改宏定义部分.

Top