c - 警告:函数'printf'的隐式声明

Tom*_*Tom 45 c

我知道之前有很多类似的问题,但我找不到能解决这个警告的问题:

MyIntFunctions.c:19:2: warning: implicit declaration of function ‘printf’ [-Wimplicit-function-declaration]
Run Code Online (Sandbox Code Playgroud)

发生在这里:

void IntPrint (const void *key)
{
    printf("%d", *(int*)key); // line 19
    printf("\t-->\t");
}
Run Code Online (Sandbox Code Playgroud)

和类似的警告:

MyStringFunctions.c:22:2: warning: implicit declaration of function ‘printf’ [-Wimplicit-function-declaration]

void StringPrint (const void *key)
{
    printf("%s",(char*)key); //line 22
    printf("\t-->\t");
}
Run Code Online (Sandbox Code Playgroud)

我真的很想知道出了什么问题所以我将来不会再这样做了.

sim*_*onc 71

您需要包含适当的标头

#include <stdio.h>
Run Code Online (Sandbox Code Playgroud)

如果您不确定定义了标准函数的标题,则函数的手册页将说明这一点.


小智 13

您需要包含该printf()函数的声明.

#include <stdio.h>
Run Code Online (Sandbox Code Playgroud)