3 回答
TA贡献1842条经验 获得超12个赞
不,这在C中不违法.在您链接到的问题(以及链接到的答案的问题)中涉及多个文件。同一文件中的多个(兼容)暂定定义并不违反。这一问题的违反是因为,在翻译单位的末尾,如果有没有完全定义的暂定定义,就意味着一个完整的定义。这加上多个文件会导致链接时产生多个定义(除了跨多个文件的暂定定义规则的公共扩展外)
TA贡献1853条经验 获得超9个赞
extern
int a = 1;int a = 2;
TA贡献1786条经验 获得超11个赞
a
a
printf("Hi");
- 3 回答
- 0 关注
- 482 浏览
添加回答
举报