lxx15731198095
2021-07-15 10:05
采纳率: 76.9%
浏览 29

c++和c语言中头文件里可以定义全局变量吗?

我在使用vs2017时在头文件里定义变量运行不了,但在dev c++里可以,这是由于软件应用的原因吗?

  • 收藏

3条回答 默认 最新

  • bostonAlen 2021-07-15 10:17
    已采纳

    可以定义的,其他要使用的cpp文件要用extern 声明

    已采纳该答案
    打赏 评论
  • 爱晚乏客游 2021-07-15 10:21

    好像不行吧,不然你多个cpp引用这个.h文件,不同的源文件都可以正常编译,但是两个地方存在相同的变量,导致编译器无法识别应该使用哪一个,就会出现链接错误。
    如果你非要这么定义全局变量,那么我的建议是定义在源文件里面,然后在头文件里面使用extern关键字来使用该全局变量

    打赏 评论
  • qfl_sdu 2021-07-15 10:25

    VS2017可以在.h中定义全局变量。
    可以把通用的结构体定义和全局变量放在一个独立的.h中,用到这些结构体定义和全局变量的就添加这个.h就可以了。

    打赏 评论

相关推荐 更多相似问题