码迷,mamicode.com
首页 > 编程语言 > 详细

深入理解C语言的预编译指令之 include

时间:2017-09-16 18:41:41      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:c语言学习   c语言原创文章   c语言学习总结   

写过C语言的朋友都熟悉#include,在打印“hello world”这样一条语句也用上这条指令。但是,说熟悉它,只是表面熟悉,更多感觉是既熟悉又抽象陌生,结果也就只是不知道为什么的背诵了。抽象、熟悉而陌生,使得#include成为“最熟悉的陌生人”。

试着从另外的角度来深入理解它。

1:首先,它是一条预编译指令

也就是在编译之前就做了的,那么做了什么呢?动态包含。

2:其次,来理解何为“动态包含”?

一开始:

技术分享

效果:

技术分享

现在,先创建一个头文件:

技术分享

把语句拷贝到ok.h中:

技术分享

主文件中:

技术分享

效果一样:

技术分享

可见:#include 文件名 ,这条语句的功能是:在调用的时候复制该.h中的内容、粘贴到调用的地方的效果。这就是动态包含。

3:再次,为什么要这么做?也就是“动态包含做成#include”的意义:

这样的好处可以简化后续的维护:以后如果要修改了,只要到这个.h中来修改,那么N多地方多跟着是最新的了。

4:最后,继续探究!

其实.h也不一定是必须的,你可以是任意的后缀。这样就更加的体会出,#include 文件名,这个预编译指令的重点是#include,是动态包含,而不是后缀是什么文件。

如:我把ok.h改为ok.ncc,同时为了区别,增加了几个字:

技术分享

在主文件中修改包含的文件:

技术分享

结果同样正确(打印了最新的内容)

技术分享

更多C语言详解,敬请关注下集分解...


本文出自 “C语言好爽” 博客,请务必保留此出处http://ningcaichen66.blog.51cto.com/2902291/1965797

深入理解C语言的预编译指令之 include

标签:c语言学习   c语言原创文章   c语言学习总结   

原文地址:http://ningcaichen66.blog.51cto.com/2902291/1965797

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!