ファイル「draw.h」に関数がありました:
void TileSystem() {
// Some code here.
}
そして、「main.c」ファイルで、ファイルに「draw.h」を #include したので、それを呼び出します。機能はうまく動作します!!
しかし、その後、関数の名前を次のように変更することにしました
void CreateTileSystem() {
// Some code here.
}
そして、次の出力が得られます。
gcc main.c -std=c99 -o main `pkg-config --cflags --libs allegro-5.0 allegro_acodec-5.0 allegro_audio-5.0 allegro_color-5.0 allegro_dialog-5.0 allegro_font-5.0 allegro_image-5.0 allegro_main-5.0 allegro_memfile-5.0 allegro_physfs-5.0 allegro_primitives-5.0 allegro_ttf-5.0`
main.c: In function ‘main’:
main.c:217:12: warning: implicit declaration of function ‘CreateTileSystem’ [-Wimplicit-function-declaration]
/tmp/cclNEg6q.o: In function `main':
main.c:(.text+0xb1e): undefined reference to `CreateTileSystem'
collect2: error: ld returned 1 exit status
make: *** [main] Error 1
そして、名前を TileSystem に戻すだけで、うまく機能します。コード全体で他の参照はありません。まったく意味がありません!関数で動詞を使用するために、名前を変更したいと思います(より「正しい」標準だと思います)。うーん、本当にどうなるか知りたいです。私は本当にエラーを見つけることができず、名前を変更すると元に戻るという事実は、私をさらにイライラさせます.
どうもありがとうございました!