我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

samuschen



性别: 美女 状态: 该用户目前不在线
等级: 品行端正
发贴: 201
威望: 0
浮云: 1663
在线等级:
注册时间: 2007-09-15
最后登陆: 2008-06-29

5come5帮你背单词 [ challenge /'tælənd3ə/ vt. 向…挑战;n. 挑战 ]


关于头文件

c语言里的头文件,我看了一些里面都是一些函数的声明没有函数体,那函数体在哪实现的哩?
顶端 Posted: 2008-03-26 15:44 | [楼 主]
zhoubaozhou





性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 696
威望: 0
浮云: 1082
在线等级:
注册时间: 2007-03-13
最后登陆: 2023-01-26

5come5帮你背单词 [ golden /'gəuldən/ a. 金色的,发亮的,金的,金制的,高尔夫球 ]


在动态库,静态库里面
已经是二进制代码了
顶端 Posted: 2008-03-26 15:46 | [1 楼]
身寸米青





性别: 帅哥 状态: 该用户目前不在线
等级: 希望之光
家族: 菠韬汹勇
发贴: 1560
威望: 0
浮云: 1089
在线等级:
注册时间: 2008-03-02
最后登陆: 2008-05-25

5come5帮你背单词 [ steadily /'stedili/ ad. 稳定地 ]


头文件A.h

那么实现就在A.c里实现
顶端 Posted: 2008-03-26 15:46 | [2 楼]
ufly



性别: 帅哥 状态: 该用户目前不在线
等级: 希望之光
发贴: 1930
威望: 0
浮云: 1366
在线等级:
注册时间: 2006-06-19
最后登陆: 2010-10-14

5come5帮你背单词 [ exclude /iks'klu:d/ vt. 把…除外,排斥 ]


大多数编译器不带源文件,那些函数已经被编译成了库,直接调用就行了
顶端 Posted: 2008-03-26 15:46 | [3 楼]
samuschen



性别: 美女 状态: 该用户目前不在线
等级: 品行端正
发贴: 201
威望: 0
浮云: 1663
在线等级:
注册时间: 2007-09-15
最后登陆: 2008-06-29

5come5帮你背单词 [ scientist /'saiəntist/ n. 科学家 ]


Quote:
引用第3楼ufly于2008-03-26 15:46发表的  :
大多数编译器不带源文件,那些函数已经被编译成了库,直接调用就行了

那头文件和库是什么关系啊?
顶端 Posted: 2008-03-26 15:54 | [4 楼]
jasper





性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 482
威望: 0
浮云: 1140
在线等级:
注册时间: 2005-10-04
最后登陆: 2009-05-07

5come5帮你背单词 [ adult /'ædΛlt/ a. 成年人的,已成熟的;vt. 成年人 ]


头文件声明了函数的原型,实现打包在库里
顶端 Posted: 2008-03-26 23:12 | [5 楼]
est





性别: 帅哥 状态: 该用户目前不在线
等级: 荣誉会员
发贴: 6578
威望: 3
浮云: 431
在线等级:
注册时间: 2006-10-14
最后登陆: 2018-07-05

5come5帮你背单词 [ substance /'sΛbstəns/ n. 物质,实质,本质,要义,主要部分 ]


Quote:
引用第4楼samuschen于2008-03-26 15:54发表的  :

那头文件和库是什么关系啊?


其实很多语言BASIC, Pascal等等没有指针,调用 .lib .dll 只需要直接调用 .lib .dll 里的函数名就可以了,可以用 dumpbin 或者 depends 工具看到。 C 需要一些常量声明和地址,所以需要头文件。 个人的肤浅理解~~
顶端 Posted: 2008-03-28 14:59 | [6 楼]
kkong



性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
家族: 单身贵族
发贴: 213
威望: 0
浮云: 1116
在线等级:
注册时间: 2007-03-13
最后登陆: 2011-02-21

5come5帮你背单词 [ consequent /'konsikwənt/ a. 作为结果的,随之发生的 ]


库函数已经由c文件编译成二进制文件。如果程序要访问库函数,必须要进行函数原型的声明,此时需要包含所访问函数的头文件。当你编译程序时,编译器会将你编的程序与库函数的二进制文件进行连接最终形成可执行文件。这样做一方面可以提高编译的速度,另一方面是对库函数文件的保密
顶端 Posted: 2008-03-29 11:18 | [7 楼]
我来我网·5come5 Forum » 程序员之家

Total 0.022380(s) query 5, Time now is:05-10 16:59, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号