问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言中 .c和.h有什么区别

发布网友 发布时间:2022-04-22 06:16

我来回答

3个回答

热心网友 时间:2023-12-18 08:55

一、意思不同

.h中一般放的是同名.c文件中定义的变量、数组、函数的声明,需要让.c外部使用的声明。

.c文件一般放的是变量、数组、函数的具体定义。

二、用法不同

.c文件,以c为扩展名,一般存储具体功能的实现。

.h文件,称为头文件,一般存储类型的定义,函数的声明等。通常,头文件被.c文件包含,使用#include 语句。但值得注意的是,这只是一种约定,而非强制。

三、作用

如果在h文件中实现一个函数体,那么如果在多个C文件中引用它,而且又同时编译多个C文件,将其生成的目标文件连接成一个可执行文件,在每个引用此h 文件的C文件所生成的目标文件中,都有一份这个函数的代码,如果这段函数又没有定义成局部函数,那么在连接时,就会发现多个相同的函数,就会报错。

如果在h文件中定义全局变量,并且将此全局变量赋初值,那么在多个引用此h文件的C文件中同样存在相同变量名的拷贝,关键是此变量被赋了初值,所以编 译器就会将此变量放入DATA段,最终在连接阶段,会在DATA段中存在多个相同的变量,它无法将这些变量统一成一个变量,也就是仅为此变量分配一个空 间,而不是多份空间,假定这个变量在h文件没有赋初值,编译器就会将之放入BSS段,连接器会对BSS段的多个同名变量仅分配一个存储空间。

热心网友 时间:2023-12-18 08:56

C语言的源文件分为两种:

1、.c文件,以c为扩展名,一般存储具体功能的实现;

2、.h文件,称为头文件,一般存储类型的定义,函数的声明等。

通常,头文件被.c文件包含,使用#include 语句。

但值得注意的是,这只是一种约定,而非强制。

事实上,将声明写在.c文件,比如a.c,然后

#include "a.c"

同样是合法的。 

而把.h文件,内部写入函数实现,再在.c文件中引用,也是编译器允许的。

所以,.c与.h的区分,本质上是一种约定。一名合格的软件开发人员,也要遵循这个约定,增加代码的可读性和维护性。

热心网友 时间:2023-12-18 08:56

头文件用於定义类型
c文件主要用於写实现.
C语言中 .h文件和.c文件区别

C语言中的.h文件和.c文件在结构和功能上有所不同,它们各自扮演着独特的角色。首先,让我们来看看它们的主要区别:1. 功能含义:.h文件,也称为头文件,主要用于声明函数、变量以及常量等,它不包含函数的具体实现。而.c文件,负责编写函数的详细实现代码,以及执行逻辑。2. 用法上的区别:当在.h文...

c语言的头文件. h和. c有啥不同?

一、意思不同 .h中一般放的是同名.c文件中定义的变量、数组、函数的声明,需要让.c外部使用的声明。.c文件一般放的是变量、数组、函数的具体定义。二、用法不同 .c文件,以c为扩展名,一般存储具体功能的实现。.h文件,称为头文件,一般存储类型的定义,函数的声明等。通常,头文件被.c文件包含,...

C语言.c.h有什么不同?

1. 在C语言中,`.c`和`.h`文件分别代表源文件和头文件。2. `.h`文件通常用作包含声明和宏定义的地方,它指导编译器如何处理和链接代码。3. 头文件后缀为`.h`是为了区分不同的文件类型,便于识别。4. 尽管`.h`文件在技术上不是必需的,但在多人的开发环境中,它有助于代码的组织和分类,...

c语言中.c和.h有什么区别

在C语言中,.c和.h文件有各自独特的用途和含义。详细解释:1. .c文件 .c文件是C语言中的源代码文件,通常包含具体的函数实现、变量定义等。它是编译单元,意味着编译器会单独编译每一个.c文件,将其转换为目标文件。在项目中,每个.c文件通常对应一个模块或功能。例如,如果你有一个名为“math_f...

C语言中 .c和.h有什么区别

在C语言编程中,.c和.h文件扮演着不同的角色,它们之间的区别主要体现在功能、用法和作用上。首先,让我们来看它们的不同含义:.h文件,通常称为头文件,主要作用是声明同名的.c文件中定义的变量、数组和函数。这些声明是为了让其他.c文件能够知道它们的存在,但函数的具体实现并不在.h文件中。.c...

. h和. c有什么区别?

.c文件包含实现特定功能的代码。.h文件,也被称作头文件,它包含的是类型定义、宏、外部变量声明和函数原型等。在C语言编程中,我们通常通过#include指令在.c文件中包含头文件,以便重用定义和声明。三、功能作用差异 如果在.h文件中定义了一个函数体,当这个.h文件被多个.c文件包含时,每个.c文件都会...

c语言中的. h文件和. cpp文件有什么区?

本质上没有任何区别。 只不过一般:.h文件是头文件,内含函数声明、宏定义、结构体定义等内容.c文件是程序文件,内含函数实现,变量定义等内容。而且是什么后缀也没有关系,只不过编译器会默认对某些后缀的文件采取某些动作。你可以强制编译器把任何后缀的文件都当作c文件来编。编译器在编译时是以C文件为...

C语言中 .c和.h有什么区别

通常,头文件被.c文件包含,使用#include 语句。但值得注意的是,这只是一种约定,而非强制。事实上,将声明写在.c文件,比如a.c,然后#include "a.c"同样是合法的。 而把.h文件,内部写入函数实现,再在.c文件中引用,也是编译器允许的。所以,.c与.h的区分,本质上是一种约定。一名合格的...

C语言中,分成好几个.c和.h文件的理解

你好,.c是源文件,而.h是头文件,一般把函数的声明都放在头文件中,而实现就都在.c文件当中,你只要把这弄清楚了就好了。希望我的解答能给你带来帮助,谢谢!望采纳

*.h和*.c文件的区别

.h为头文件,.c为源文件,其实两者都是代码,为什么要做这样的区分呢?主要有几点好处:一是头文件用于共享,只用一句#include就能包含,当然.c也可以包含;二是如果你要写库的话,可是你又不想暴露你的源代码,你可以把.c编译成.obj或是.lib发给别人用,然后把.h作为使用说明书。所以一般情况下,...

c语言中h是什么意思 c语言中c文件与h文件 c语言!是什么 c语言h头文件怎么写 c语言stdlib.h c语言string.h c语言windows.h c语言graphics头文件 conio.h是什么头文件
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
借钱有什么好平台 什么app能借钱靠谱 庚饭和妖精的区别??? 至上励合 sj hit5和东方神起谁最Q (急) 关于在唯爱SJ13预定四辑的问题!!! SJ有哪些中站【包括全体和个人的 除了贴吧】 越多分越高~~~ 请问妖精们怎么称呼SJ的每一个成员? ...和东方神起的笑话“就是那种当18只遇到……”我在这里谢谢啦_百度知 ... 我家兄弟两个,老大什么都不管,我家婆跟着我们什么都得管,她总在我们... 我一直想做好为什么老大不重视我 c++中后缀名.c 与.cpp的区别 strcmp在c语言中是什么意思呢? win10系统安装后无限重启 WIN10无限重启怎么解决,现在开不了机 用小白一键重装系统win10最后一直重启已经半个多小... 联想笔记本重装win10系统后无限重启 win10安装不断重启怎么办 安装win10一直重启怎么办 股票的涨跌受哪些因素影响? 股票价格波动与哪些因素有关? 影响股价变动的基本因素 影响股票价格变动的技术因素有哪些? 影响股票涨跌的因素,一般都有哪些? 有哪些因素会影响股价的变动? 影响股票价格变化的主要因素 影响股价的主要因素 影响股价波动的因素有哪些 4 影响股票价格变动的因素有哪些 苹果手机,删除短信的时候误点了报告垃圾短信,以后还会收到那些号码的短信吗,怎么退订人家的短信? 首都机场3号航楼站为什么叫t3航楼站? 后缀为.c的文件是什么格式的?使用什么软件来打开 C语言中,include是什么意思? C中include""与include<>的区别 在C语言中c% 和 d% 是表示什么意思? .c是什么单位? c语言的双冒号是什么意思:: C语言中clrscr()是什么意思? 连接无线路由器电脑IP怎么设置 用无线网连接的电脑怎么更改ip? 什么手机可以在线听音乐? 在线听音乐软件哪里有啊? 在线听音乐哪个网站或者软件好? 可以在线听歌下载歌的手机音乐软件 网易邮箱是不是可以无限制的注册呀!?? 方便好用的在线听音乐网站? 网易163邮箱有没有期限限制 什么软件在线听音乐最好? 163邮箱注册没发短信验证码怎么回事,有什么限制. 在线听音乐网站的网站哪里有? 手机如何在线听音乐