选择 一个且仅一个 源文件来为这个全局变量分配内存。
跨文件使用结构体,记得定义结构体,extern声明变量,var分配空间。
最好需要完整定义
头文件的作用是“告知”,而不是“实现”。
结构体类型未定义
结构体定义在多个编译 文件中出现
在需要使用该结构体的 所有 .c 文件中包含该头文件
声明变量在其他文件中定义,避免重复定义
避免头文件暴露内部结构体细节,减少外部依赖和符号冲突。
可能暴露旧版本忽略的结构体初始化问题。
可通过extern声明
在头文件中,使用 typedef 来统一类型名称,避免 struct 关键字和类型名混用。
GCC 10启用了更多默认警告