嗨,我有一个关于在真正的C语言writen下面的代码片段问题GCC警告挥发性双阵列
volatile double samp[256];
当我试图编译它的gcc给了我一个接着warrning:
array 'samp' assumed to have one element
我的问题是C++数组声明样式在真C中是正确的吗?
嗨,我有一个关于在真正的C语言writen下面的代码片段问题GCC警告挥发性双阵列
volatile double samp[256];
当我试图编译它的gcc给了我一个接着warrning:
array 'samp' assumed to have one element
我的问题是C++数组声明样式在真C中是正确的吗?
措辞 “假定为具有一个元件” 是从Technical Corrigendum 1到ISO/IEC 9899:1990(C90):
如果在含有
int i[];
所述翻译单元的端部数组i
仍然具有不完整的类型,该数组假定有一个元素。程序启动时此元素初始化为零。
这表明您已经声明没有数组边界的数组:
volatile double samp[];
您应该检查的samp
所有定义。
谢谢我很惭愧。你是对的,总是相同的“代码中的消息”Eclipse没有保存我的文件,我编译了旧版本... – Mazeryt
这很奇怪。这是正确的语法,我没有从我的gcc得到这样的警告。难道你的数组维度是由宏而不是文字常量给出的? –
如果在其他地方声明了samp'数组,你可以检查你的程序吗? – ouah
您使用的是哪个版本的GCC? (要知道,运行'gcc --version'。) –