#ifndef,#define,#endif使用

自从大一上学期学完c语言之后,就没有在学过c语言了,现在由于学习需要,又要将c语言重新拾起来。而快速的学习一门语言(当然是有了一些基础了的),就是直接看源码,看的不会的,就去立马学习!好了,源码学习开始!

首先,本人使用understand阅读源码神器进行阅读源码。随手打开了一个.h头文件,跳过备注,之后就是#ifndef、#define,还有后面的#endif,这是干嘛用的啊!基础类型的c语言的书是不会讲到这个的(我所看的是没有讲到这个的)。

然后上网查用法:防止该头文件被重复引用,即同一文件在另一个文件在被include了多次,多数情况由于嵌套include引起。

那么,什么叫做重复引用呢?列举一个例子,现在有a.h,b.h,c.cpp,a.h这个头文件中include"b.h",c.cpp中头文件include“a.h”和头文件include"b.h",其中,b.h就重复出现在c.cpp中了。

注:头文件重复引用,不一定会报错!

下面再来解释一下,我所看到的这几个关键字的用法,

#ifndef PL_UTL_H //  if not define pldefine pl_utl.h

#define PL_UTL_H //   则引入 pl_utl.h这个头文件

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

#endif  // 放在文件的后面

最后,不管有没有重复引用的存在,推荐这种规范的写法!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值