打印
[PIC®/AVR®/dsPIC®产品]

关于全局变量

[复制链接]
676|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Amosander|  楼主 | 2020-10-13 19:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想把全局变量、结构体都放在一个文件里面,主函数、其他函数都可以直接用这些变量,该怎么做呢?求指点

使用特权

评论回复
沙发
hu9jj| | 2020-10-13 20:12 | 只看该作者
变量可以在其他文件的开始位置再定义一遍,并加extern前缀,否则就重复定义了。

使用特权

评论回复
评论
Amosander 2020-10-14 10:02 回复TA
@49500199 :没错,我用你的方法可以成功定义变量,但对于结构体 得把结构体定义在h文件然后接着用extern声明,然后在对应c文件里面赋值,最后在要用的c文件include,这样通过编译了 
49500199 2020-10-14 08:20 回复TA
@Amosander :在一个C文件里面进行定义,然后在一个.H文件里面使用extern再次声明变量,最后在需要的C文件里,include就OK了,microchip的很多官方代码就是这么干的 
hu9jj 2020-10-13 20:55 回复TA
@Amosander :全局变量应该这样使用,结构体就不清楚,也许不需要重复定义,使用前声明一下就行。 
Amosander 2020-10-13 20:49 回复TA
我在h文件定义一个结构体并用extern前缀声明,然后在c文件赋值并include那个h文件,然后我在其它c文件include那个h文件就可以直接用那个变量了是吧 
板凳
CoolSilicon| | 2020-10-14 11:07 | 只看该作者
这是很基础的C文件引用关系, 百度一下就可以找到答案的..

使用特权

评论回复
地板
奔波儿熊| | 2020-10-14 14:39 | 只看该作者
放在一个文件里,或者在别的文件里用extern 声明

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

33

帖子

0

粉丝