关于全局变量

[复制链接]
208|14
手机看帖
扫描二维码
随时随地手机跟帖
yszong|  楼主 | 2022-5-12 22:33 | 显示全部楼层 |阅读模式
我想把全局变量、结构体都放在一个文件里面,主函数、其他函数都可以直接用这些变量,该怎么做呢?求指点

使用特权

评论回复
xxrs| | 2022-5-12 22:35 | 显示全部楼层
变量可以在其他文件的开始位置再定义一遍

使用特权

评论回复
chenjunt| | 2022-5-12 22:37 | 显示全部楼层
并加extern前缀

使用特权

评论回复
zwll| | 2022-5-12 22:40 | 显示全部楼层
否则就重复定义了

使用特权

评论回复
chuxh| | 2022-5-12 22:42 | 显示全部楼层
没错,我用你的方法可以成功定义变量

使用特权

评论回复
yszong|  楼主 | 2022-5-12 22:43 | 显示全部楼层
但对于结构体 得把结构体定义在h文件然后接着用extern声明

使用特权

评论回复
dingy| | 2022-5-12 22:46 | 显示全部楼层
然后在对应c文件里面赋值,最后在要用的c文件include,这样通过编译了

使用特权

评论回复
huanghuac| | 2022-5-12 22:50 | 显示全部楼层
在一个C文件里面进行定义,然后在一个.H文件里面使用extern再次声明变量,最后在需要的C文件里,include就OK了,microchip的很多官方代码就是这么干的

使用特权

评论回复
gongche| | 2022-5-12 22:52 | 显示全部楼层
全局变量应该这样使用,结构体就不清楚,也许不需要重复定义,使用前声明一下就行。

使用特权

评论回复
pengf| | 2022-5-12 22:53 | 显示全部楼层
我在h文件定义一个结构体并用extern前缀声明,然后在c文件赋值并include那个h文件

使用特权

评论回复
pengf| | 2022-5-12 22:55 | 显示全部楼层
然后我在其它c文件include那个h文件就可以直接用那个变量了是吧

使用特权

评论回复
jlyuan| | 2022-5-12 22:57 | 显示全部楼层
这是很基础的C文件引用关系, 百度一下就可以找到答案的..

使用特权

评论回复
juventus9554| | 2022-5-12 22:59 | 显示全部楼层
放在一个文件里,或者在别的文件里用extern 声明

使用特权

评论回复
yszong|  楼主 | 2022-5-12 23:02 | 显示全部楼层

其实还是不大明白,我再琢磨琢磨吧,多谢了哈先

使用特权

评论回复
yangxiaor520| | 2022-5-13 08:59 | 显示全部楼层
可以,写一个专用定义文件。

使用特权

评论回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则