私は(すぐに)いくつかのコードを書いていて、誤って引数を反転させていましたscanf():
char i[] = "ABC1\t";
scanf(i, "%s");
でコンパイルするとgcc -Werror -Wall -Wextra、これについて少し文句はありません。明らかに、このコードは機能しませんが、引数を反転したことを gcc が通知しなかったのはなぜですか? iフォーマット文字列ではないこと、または 2 番目の引数が格納可能な型ではないことを検出できませんか?
EDIT
すべての洞察に感謝します。答えを見つけたようです。-Wformatこれを「キャッチ可能」にするフラグにひねりがありました(参照用に以下に投稿)