正如问题所述,具有“隐含的功能宣告”警告的含义究竟是什么?我们只是在
gcc上加了警告标志,发现了很多这些警告的例子,我很好奇在修复它们之前可能会引起什么类型的问题?
另外,为什么这是警告而不是错误. gcc如何成功链接这个可执行文件?正如您在下面的示例中所看到的,可执行文件按预期运行.
以下面两个文件为例:
在file1.c
#include
int main(void)
{
funcA();
return 0;
}
file2.c中
#include
void funcA(void)
{
puts("hello world");
}
编译&产量
$gcc -Wall -Wextra -c file1.c file2.c
file1.c: In function 'main':
file1.c:3: warning: implicit declaration of function 'funcA'
$gcc -Wall -Wextra file1.o file2.o -o test.exe
$./test.exe
hello world