c语言预处理器指令

本文介绍了C语言的预处理器指令,包括#define与#undef的使用,宏定义的注意事项,##及可变宏的应用,#include指令,条件编译,以及预定义宏的功能。预处理器在程序开发中起到关键作用,如宏定义常量、简化代码和实现条件编译等。
摘要由CSDN通过智能技术生成
c语言有强大的预处理器指令,在很多情况下都是很有用的。


首先介绍什么是预处理器,预处理器就是在程序的源代码编译之前,会对程序进行翻译工作,就是把这程序\之后的回车去掉,以及去掉注释,然后会把之间的空白自符去掉,然后再根据预处理指令把程序进行预处理操作,等着一切都进行完毕以后,就会进行编译操作。


#define与#undef的使用:


#define是最常用的预处理器指令,他代表一个宏定义。例如这样一个例子,#define A 1就代表用1代替接下来的代码里边出现的A,由于这是预编译指令,是在程序的编译之前进行的,所以完全不必担心程序执行的效率的影响,这么做反而会使得程序的可读性以及可维护性得到很大的提高,强烈建议以后常用的常量都用#define来表示。


另外,c语言允许对宏定义的重定义,只是会覆盖之前的宏定义而已。


#define不仅可以宏定义数值常量,还可以宏定义函数,其实这不能称之为函数,只是把对应的自符串替换成为对应的代码而已。例如#define S(X) X*X 的话,在接下来的程序中使用S(2)的话,就会被预处理器替换成为2*2,但是有一个缺点,如果是S(2+1)的话,就会被替换成为2+1*2+1,这肯定不是你想要的,所以对于宏定义的函数最好都加上括号,并且每一个元素都加上括号。并且注意在宏定义的函数里边不要使用++或者--的运算符,会造成不好的后果。


宏定义的函数并不适合定义比较大的函数,宏定义的函数比较适合
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值