2017-07-29 12 views
-1

私はallegroライブラリでゲームを開発しています。私はスターターのCコードを書いた後、Ubuntu Terminalでプログラムをコンパイルします。その後、出力プログラムを開くと、プログラムは開いていますが、閉じていません。キャンセルボタン(X)は機能しません。ここで出力Cプログラムをログアウトできません

は私のスターターコードです:

#include <allegro.h> 

void Baslat(); 
void Bitir(); 

int main(){ 
     Baslat(); 
     while(!key[KEY_ESC]){ 

     } 
     Bitir(); 
     return 0; 
} 

END_OF_MAIN() 

void Baslat(){ 
     int depth,res; 
     allegro_init(); 
     depth = desktop_color_depth(); 
     if(depth == 0) depth=32; 
     set_color_depth(depth); 
     res=set_gfx_mode(GFX_AUTODETECT_WINDOWED, 640,480,0,0); 
     if(res!=0){ 
       allegro_message("%s\n", allegro_error);     exit(-1); 
     } 
     install_timer(); 
     install_keyboard(); 
     install_mouse(); 

} 


void Bitir(){ 
    clear_keybuf(); 

} 
+1

デバッグを試行しましたか?デバッガでアプリケーションを実行し、終了時にハングアップするとCtrl + Cキーを押します。 – arrowd

+0

私はタグに基づいて 'allegro5'について回答しましたが、あなたが実際に' allegro4'を使用しているように見えます。アレグロのどのバージョンに興味がありますか? – rcorre

答えて

0

allegro5でXボタンを押すと、ユーザーに対応するために、あなたはALLEGRO_EVENT_DISPLAY_CLOSEをキャッチする必要があります。 This tutorialは、そのイベントに応答する例を示します。

+0

はい私はallegro4を使用しますが、あなたの答えを理解できません。 どのアレグロのリリースを使用しますか? allegro4で私の問題を解決する方法はありますか? –

+0

使用するリリースは個人的な決定ですが、古いバージョンを使用する魅力的な理由がない限り、最新のリリースを使用します。私は 'allegro4'を使用しないので、あなたの問題をどのように解決するのか分かりません。 'allegro5'を使用している場合は、私がリンクしているチュートリアルでは、あなたが望むものと正確にコードサンプルと説明を与えてくれます。 – rcorre

関連する問題