Tag: 抑制警告

如何消除“丢弃限定符”警告?

使用GCC和C99模式,我有一个声明为: void func(float *X); 当我调用该函数时,我使用了一个易失性数组Y: volatile float Y[2]; int main() { func(Y); return 0; } 编译时(使用-Wall ),我收到以下警告: warning: passing argument 1 of ‘func’ discards qualifiers from pointer target type blah.c:4: note: expected ‘float *’ but argument is of type ‘volatile float *’ 我可以使用显式(float *)类型转换来消除它,但这在代码中的许多地方重复。 有没有办法消除这个特定的警告,有一个选项或一个pragma(或等效的东西)?