我在c程序中使用scanf从STDIN读取一个int:
scanf("%d",&n);
当我编译启用优化的c程序时,我得到一些警告:
gcc main.c -lm -lpthread -O2 -o main main.c: In function ‘main’: main.c:45: warning: ignoring return value of ‘scanf’,declared with attribute warn_unused_result main.c:50: warning: ignoring return value of ‘scanf’,declared with attribute warn_unused_result
但是当我删除优化选项时,为什么不收到这些警告?
gcc main.c -lm -lpthread -o main
P.S:我没有使用-Wall或类似的东西.