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> å°±å�¯ä»¥äº†ã€‚