【发布时间】:2012-10-15 15:19:25
【问题描述】:
我(很快)写了一些代码,不小心颠倒了scanf()中的参数:
char i[] = "ABC1\t";
scanf(i, "%s");
使用gcc -Werror -Wall -Wextra 编译不会抱怨这一点。显然,这段代码不起作用,但为什么 gcc 没有通知我我倒置了参数?它不能检测到i 不是格式字符串,或者第二个参数不是可存储类型吗?
编辑
感谢大家的洞察力,看起来我找到了答案,-Wformat 标志上有一个扭曲,使这个“可捕获”(发布在下面以供参考)
【问题讨论】:
标签: c gcc compiler-errors