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.方便对数据做修改,如果数据产生变化,仅需要修改宏定义部分.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容