私はまだ 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'
これをヘッダーに含めようとしましたが、ファイルまたはディレクトリが見つからないというエラーが表示されます。
どんな助けでも感謝します。