我必须在PC上使用外部C代码(最初在嵌入式硬件上运行),这是不允许我修改的。
一个.h文件中的某些变量声明如下所示:

extern int variableA;
extern variableB;
extern variableC+0;

variableA的声明很清楚。
variableB的声明传递给编译器,类型假定为int。
variableC的声明失败。
问题:
variableC的声明使用哪种语法?如何使编译器接受它(不允许修改代码)?这是一个有效的C语法吗?
项目使用的编译器是VS2008内部编译器。
更新:
我追溯到includes,没有define改变了语法。仅供参考,该代码来自机载硬件,并且编译正确(使用硬件编译器)。在我可用的代码部分中,该变量用作常规变量:
variableC+0 = otherVar;

感谢您的回复,这似乎真的是无效的标准C代码,只为特定的编译器工作。

最佳答案

这种语法在C标准中没有任何意义。

关于c - ANSI C变量声明语法“+0”?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11935685/

10-11 23:20
查看更多