诗和远方

为什么include .h文件而不是include .c文件?

C语言

从设计角度上讲,源代码区分为.h和.c文件,是为了接口与实现的分离,实际上两者没什么本质的差别。.h文件提供接口,.c文件提供具体的实现,两者可以一一对应,也可以不一一对应,没有强制要求。

一个.c文件做为一个模块的实现,有可能要跟其他的模块打交道,这个时候就需要include其他模块的接口(其他模块的.h文件);而包含其他模块的实现(.c文件)是没有意义的、危险的。

所以,我们不应该在项目中include .c文件,这样使用者出于直觉很难想到这里会有问题,增加了排错的难度。


为何要分为头文件和源文件?本来就是为了传递如下信息:

类型定义

外部函数原型

外部变量

Related
C 语言编译器2019年07月03日
C 语言标准2019年07月03日
C语言预处理器指令2019年06月20日
为什么include .h文件而不是include .c文件?2019年06月20日
#ifndef, #define2019年06月20日
C语言宏定义和宏定义函数2019年06月18日
Random
京东卷入0元购骗局2018年07月13日
球幕电影2018年05月02日
浪涌2017年12月01日
把一片口香糖掰成两块儿,很舍不得吃2018年01月23日
网易博客宣布关停2018年08月21日
中国互联网2018年09月27日
看到这个视频,我深深的吸了一口我手中的烟2018年01月08日
科学使用人尿浇灌2018年04月26日

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Catalog
标签列表
最新
最热
常用网站
站点信息
  • 文章总数:2015
  • 页面总数:1
  • 分类总数:17
  • 标签总数:517
  • 评论总数:0
  • 浏览总数:556728
Archives
Copyright © 2017-2019 www.my889.com Some Rights Reserved.
推荐使用 Chrome 浏览器浏览本站
沪ICP备17052342号
Sitemap XML