0

次のコード (Allegro 4、C++) を使用していますが、次のエラーが発生します。

#include <allegro.h>

//defines
#define MODE GFX_SAFE
#define WIDTH 640
#define HEIGHT 480

int main (void)
{
    int ret;
    int counter;
    //initialize allegro
    allegro_init();
    install_keyboard();
    install_timer();
    srand(time(NULL));

    //set up screen
    //set video mode    
    ret = set_gfx_mode(MODE, WIDTH, HEIGHT, 0, 0);
    if (ret != 0)
        allegro_message(allegro_error);

        allegro_exit();
    return 0;
}

エラー:

1>MSVCRTD.lib(crtexe.obj) : error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup

そのエラーに関する以前の回答はすべて、「Windows」から「コンソール」に切り替えるように指示しています。しかし、Properties->Linker->System->Subsystem に「Console」が既にあります。

答えがない場合は、問題を絞り込むのに役立つ何かを提供できれば幸いです。C で Allegro を使用しましたが、C++ を使用して OOP を利用したいので、まだやるべきことがたくさんあります。

アップデート:

#include <iostream>
#include <allegro.h>

using namespace std;


int main ()
{
    cout << "Hello World";
    return 0;

}

動作しませんが、

#include <iostream>

using namespace std;


int main ()
{
    cout << "Hello World";
    return 0;

}

します。

それで?回答: 空のプロジェクトから始めます。

Update2: 空のプロジェクト、同じコードで再起動します。最初のブロック (リンカの alleg.lib、ただし allegro.h は含まれていません) は機能しますが、2 番目のコード (allegro.h は含まれています) は機能しません。ただし、バグは異なります。

1>LINK : 致命的なエラー LNK1561: エントリ ポイントを定義する必要があります

今何?

編集^ 2:次のすべてを無視します: Allegro を含めることに戻るのを忘れていました。それは今動作します。答えてくれてありがとう。

編集:追加:

END_OF_MAIN()

また

int END_OF_MAIN()

「致命的なエラー C1004: 予期しないファイルの終わりが見つかりました」というエラーが表示されます

4

1 に答える 1