C语言中新建一个C/C++头文件和一个与C/C++源文件有什么区别?

 我来答
tattackor
2015-10-28 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:831万
展开全部
1、相同点:
头文件与源代码都是源文件,都用纯文本文件存储,都需要遵照C/C++语言规范来写,都可以使用类型定义和常、变量定义,都可以包含函数的声明和实现,都能包含宏定义,都使用相同的调用规范。

2、不同点:
C/C++的编译器规定源代码文件必须包含函数入口,即main函数,或者winmain函数。而头文件不得包含函数入口,也就是说,头文件不可以单独编译成一个程序,仅仅包含程序片断或者仅仅定义常、变量。

3、关联:
头文件是专为源代码调用而写的静态包含文件,可被源代码文件中的#include编译预处理指令解释,而将头文件完整拷贝到源代码的指令处,从而在编译时相当于在源代码中插入了函数声明或者实现。
某些头文件包含了静态库中的函数调用声明,包含了LIB文件的调用信息,编译时静态链接进程序;而某些头文件是专为方便API调用而写的,里面包含了动态链接库的调用信息和规范,只有在运行时将DLL载入内存提取函数执行。
也就是说,其实你将头文件里的信息完全写到源代码里,是可以实现完全相同的功能的。如果想要学写头文件,可以参照标准C/C++库的h文件。
luanqibazao227
2011-03-21 · TA获得超过1.6万个赞
知道大有可为答主
回答量:6109
采纳率:57%
帮助的人:3219万
展开全部
你好!

一般来说,头文件提供接口,源文件提供实现。但是有些实现比较简单的,也可以直接写在头文件里,这样头文件接口实现一起提供。

在编译时,源文件里的实现会被编译成临时文件,运行时刻程序找到头文件里的接口,根据接口找到这些临时文件,来调用它们这些实现。

头文件就是.h文件,一般用来放类的声明,平时你用的#include<string.h>就是包含这种文件
源文件就是.cpp文件,一般用来放你在头文件里声明的类成员函数的具体实现,一般一个.h文件总会有一个同名的.cpp
譬如现在我有一个类
class T
{
void printf(){}
}
这些内容就放在.h文件中
void T::printf(){......}
这些内容就放在.cpp文件中
(MFC的消息衍射类都是这样的)

参考资料: http://edu.codepub.com/2010/1206/27753.php

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友0d471a8f7
2011-03-21
知道答主
回答量:29
采纳率:0%
帮助的人:12.1万
展开全部
没有区别,类定义放在头文件中,类的实现放在源文件中,类的实现也可以放在头文件中,这样做只是方便管理和维护。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友4a1e5e210
2015-10-07 · TA获得超过477个赞
知道答主
回答量:84
采纳率:100%
帮助的人:15.5万
展开全部
没什么区别,在编译时都一样
只不过头文件需要引用才可以使用
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
零度的花火
2018-07-28
知道答主
回答量:33
采纳率:0%
帮助的人:4.5万
展开全部
我要看一下支持和反对的人数所以回答一下问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式