Bob

warning: implicitly declaring library function 'printf' with type'int (const char *, ...)' [-Wimplicit-function-declaration]

以上警告一般发生在没有包含头文件 #include <stdio.h> 就使用 printf 的情况

int main(){
    printf("Hello, World!\n");
    return 0;
}

这句话提示的意思是:用类型“int (const char *,...)”隐式声明了库函数printf。

该提示的背景知识:因为 printf 这一类库函数太常用了,所以编译器在编译的时候,发现源文件中并没有声明 printf 这个函数就直接使用了它,那么编译器就会为 printf 函数隐式生成一个声明。你那个编译器提示你,它为printf生成的隐式声明是:int printf(const char *, ...)

该提示后果:通常情况下,这个提示只是一个 warning,而不是 error,编译仍然可以通过。

解决方案:要消除这个提示,只要加上 printf 的声明就行了。printf 函数是一个库函数,它的声明在 stdio.h 文件里。所以,你只要在源文件中 #include <stdio.h> 就可以了。