如何在 Eclipse 上使用 Cygwin C 编译器获得正确的警告 IDE
How get proper warnings using Cygwin C compiler on Eclipse IDE
我正在学习 "C" 所以我安装了 Eclipse IDE 和 Cygwin 编译器。
这是我的代码。
#include <stdio.h>
int main(void)
{
printf("Hello World\n");
// return 0;
}
我已经为 Cygwin 编译器配置了这个选项“-O0 -g3 -Wall -Wextra -Werror -c -fmessage-length=0”
令我困扰的是我没有得到任何 "warning",它应该说明 "int function".
中缺少的 "return"
我在这里让控制台输出
11:55:37 **** Incremental Build of configuration Debug for project HelloWorld ****
make all
Building file: ../main.c
Invoking: Cygwin C Compiler
gcc -O0 -g3 -Wall -Wextra -Werror -c -fmessage-length=0 -MMD -MP -MF"main.d" -MT"main.o" -o "main.o" "../main.c"
Finished building: ../main.c
Building target: HelloWorld.exe
Invoking: Cygwin C Linker
gcc -o "HelloWorld.exe" ./main.o
Finished building target: HelloWorld.exe
11:55:38 Build Finished. 0 errors, 0 warnings. (took 602ms)
谢谢大家:)
这是标准的一部分。您不必(明确地)return main 函数中的值,因此您不会收到警告。
ISO/IEC 9899:TC2,5.1.2.2.3 说:
(...)
reaching the } that terminates the main function returns a value of 0.
(...)
我正在学习 "C" 所以我安装了 Eclipse IDE 和 Cygwin 编译器。
这是我的代码。
#include <stdio.h>
int main(void)
{
printf("Hello World\n");
// return 0;
}
我已经为 Cygwin 编译器配置了这个选项“-O0 -g3 -Wall -Wextra -Werror -c -fmessage-length=0”
令我困扰的是我没有得到任何 "warning",它应该说明 "int function".
中缺少的 "return"我在这里让控制台输出
11:55:37 **** Incremental Build of configuration Debug for project HelloWorld ****
make all
Building file: ../main.c
Invoking: Cygwin C Compiler
gcc -O0 -g3 -Wall -Wextra -Werror -c -fmessage-length=0 -MMD -MP -MF"main.d" -MT"main.o" -o "main.o" "../main.c"
Finished building: ../main.c
Building target: HelloWorld.exe
Invoking: Cygwin C Linker
gcc -o "HelloWorld.exe" ./main.o
Finished building target: HelloWorld.exe
11:55:38 Build Finished. 0 errors, 0 warnings. (took 602ms)
谢谢大家:)
这是标准的一部分。您不必(明确地)return main 函数中的值,因此您不会收到警告。
ISO/IEC 9899:TC2,5.1.2.2.3 说:
(...)
reaching the } that terminates the main function returns a value of 0.
(...)