c语言如何定义全局变量的问题?

主函数main()和子函数zihanshu(),都需要用到某全局变量x。main()在main.c里面,zihanshu()在zihanshu.c里面,另外分别有main.h和zihanshu.h。
那么问题来了,全局变量x如何定义呢?
1.在main.c里面定义,zihanshu.c里面未定义,编译报错。
2.在zihanshu.c里面定义,main.c里面未定义,编译报错。
3.在main.h或者zihanshu.h里面定义,编译报错“重定义”。
请教应该怎么做,难道把所有东西都写到main.c里面??那样是可以通过可是不想那么做。

在一个.h文件里用extern来声明引用了一个外部的全局变量
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-07-03
你的头文件是怎么写的,两个c文件是怎么引用头文件的追问

main.c引用了main.h和zihanshu.h;zihanshu.c引用了zihanshu.h

相似回答