如何修复c中声明但未引用或从未引用的编译器错误
我看了几个线程,但答案似乎并不明显,所以下面是:示例代码:如何修复c中声明但未引用或从未引用的编译器错误,c,C,我看了几个线程,但答案似乎并不明显,所以下面是:示例代码: uhci_ports_poll( usbuhci_instance_t *soft){ uint64_t class = TRC_HELPER | TRC_MOD_UHCI; uint16_t reg; usbcore_instance_t *usbcore = soft->usbcore; usbhub_instance_t *roothub = soft->roothub; hub_methods_t
uhci_ports_poll( usbuhci_instance_t *soft){
uint64_t class = TRC_HELPER | TRC_MOD_UHCI;
uint16_t reg;
usbcore_instance_t *usbcore = soft->usbcore;
usbhub_instance_t *roothub = soft->roothub;
hub_methods_t *hub_methods;
uint32_t port_num;
int event = 0, rc = 0;
错误:cc-1174 c99:WARNING File=usbuhci.c第724行变量“rc”已声明但从未引用。
int事件=0,rc=0
除了这些警告之外,似乎编译和加载都很好,但是它们可以被修复吗?警告告诉您,
rc
没有在任何地方使用
您可以通过删除
rc
使警告静音,最好的方法是删除rc
,但如果在宏扩展期间或由代码生成器生成rc
,则可能会很困难
使编译器静音的传统方法是强制转换为void
。或者,可以使用GCC和CLANG编译器上可用的unused
属性
int main() {
int a;
int b __attribute__ ((unused));
int c;
(void)a;
// will warn about c but not about a and b
return 0;
}
把它拿走。它没有被引用,所以保存它没有意义。