OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2991|回复: 5

【问题】.c文件中不包含声明文件.h,为什么程序照样正常有运行?

[复制链接]

14

主题

33

帖子

0

精华

初级会员

Rank: 2

积分
72
金钱
72
注册时间
2016-9-8
在线时间
13 小时
发表于 2016-10-7 16:51:34 | 显示全部楼层 |阅读模式
1金钱
RT,还有就是为什么在main的include里面如果直接写源文件会被说明是重复定义?用的原子的代码,求大神解答!

最佳答案

查看完整内容[请看2#楼]

你全删了试试,肯定不行了。这是因为你的。h文件交叉包含最终你以为没包含的其实是包含了的
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

69

主题

978

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3772
金钱
3772
注册时间
2015-4-26
在线时间
765 小时
发表于 2016-10-7 16:51:35 | 显示全部楼层
你全删了试试,肯定不行了。这是因为你的。h文件交叉包含最终你以为没包含的其实是包含了的
我有故事,你有酒吗
回复

使用道具 举报

8

主题

570

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2908
金钱
2908
注册时间
2016-5-13
在线时间
184 小时
发表于 2016-10-8 09:45:22 | 显示全部楼层
h文件一般是声明变量、常量和函数,C文件一般是具体的变量和具体的函数实现方法。如果你只用c不用h的话,那么很容易出现代码乱七八糟的情况哦。有句话不是:no zuo , no die.
虽然不明白你们在说什么,但感觉很厉害的样子。
回复

使用道具 举报

5

主题

62

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
368
金钱
368
注册时间
2015-9-7
在线时间
82 小时
发表于 2016-10-8 11:49:24 | 显示全部楼层
你肯定包含了其它的头文件,这些头文件里面包含了你上面说的那个没包含的.h文件,所以才能正常运行,不过你最好还是每个.c对应包含它的.h最好
回复

使用道具 举报

30

主题

1170

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1993
金钱
1993
注册时间
2016-2-16
在线时间
527 小时
发表于 2016-10-8 14:16:28 | 显示全部楼层
你试下某一个h文件,所以的C文件都不包含,看他报错没,你这个是别的C文件包含了,已经编译过了
回复

使用道具 举报

6

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
185
金钱
185
注册时间
2015-4-24
在线时间
27 小时
发表于 2016-10-8 16:16:26 | 显示全部楼层
当有调用到.h就会报错了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-24 02:19

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表