我還在學習C和我明白,要擺脫最隱式聲明的警告,你在開始添加原型頭。但是我對你在代碼中使用外部方法時所做的事感到困惑。函數的隱式聲明?
這是當我使用的方法外
#include <stdio.h>
#include <string.h>
int main(void)
{
int arrayCapacity = 10;
int maxCmdLength = 20;
int A[arrayCapacity];
int count = 0; /* how many ints stored in array A */
char command[maxCmdLength + 1];
int n;
while (scanf("%s", command) != EOF)
{
if (strcmp(command, "insert") == 0)
{
scanf("%d", &n);
insert (n, A, arrayCapacity, &count);
printArray(A, arrayCapacity, count);
}
else if (strcmp(command, "delete") == 0)
{
scanf("%d", &n);
delete(n,A,&count);
printArray(A, arrayCapacity, count);
}
else
{
scanf("%d", &n);
printArray(A, arrayCapacity, count);
}
}
return 0;
}
方法printArray
,插入我的代碼,並刪除全部的形式:printArray.o, insert.o, delete.o
這是我編譯了一個程序:gcc -Wall insert.o delete.o printArray.o q1.c
和我得到這些警告:
q1.c: In function âmainâ:
q1.c:20: warning: implicit declaration of function `insert'
q1.c:21: warning: implicit declaration of function `printArray'
q1.c:30: warning: implicit declaration of function `delete'
我試過,包括這頭,但我得到è沒有找到文件或目錄的錯誤。
任何幫助表示讚賞。
什麼是對的#include是你使用,你在哪裏放頭? – Mark