-1
#include <stdlib.h>
#include <stdio.h>
#include <SDL/SDL.h>
void pause()
{
int continuer = 1;
SDL_Event event;
while (continuer)
{
SDL_WaitEvent(&event);
switch(event.type)
{
case SDL_QUIT:
continuer = 0;
}
}
}
int main(int argc, char *argv[])
{
SDL_Init(SDL_INIT_VIDEO);
SDL_Rect posBack, posbtn_jouer, posbtn_regles;
SDL_Surface *screen = NULL, *background = NULL, *btn_jouer = NULL, *btn_regles = NULL;
posBack.x = 0;
posBack.y = 0;
posbtn_jouer.x = 400;
posbtn_jouer.y = 460;
posbtn_regles.x = 400;
posbtn_regles.y = 570;
screen = SDL_SetVideoMode(1080, 720, 32, SDL_HWSURFACE);
background = SDL_LoadBMP("game_home.bmp");
SDL_BlitSurface(background,NULL,screen,&posBack);
btn_jouer = SDL_LoadBMP("btn_jouer.bmp");
SDL_SetColorKey(btn_jouer,SDL_SRCCOLORKEY,SDL_MapRGB(btn_jouer->format,255,255,255));
SDL_BlitSurface(btn_jouer,NULL,screen,&posbtn_jouer);
btn_regles = SDL_LoadBMP("btn_regles.bmp"); // Ouverture du bouton regles
SDL_SetColorKey(btn_regles,SDL_SRCCOLORKEY,SDL_MapRGB(btn_regles->format,255,255,255));
SDL_BlitSurface(btn_regles,NULL,screen,&posbtn_regles);
SDL_Flip(screen);
pause();
SDL_FreeSurface(background);
SDL_FreeSurface(btn_jouer);
SDL_FreeSurface(btn_regles);
SDL_Quit();
return EXIT_SUCCESS;
}
我使用SDL和C的遊戲程序中,當我編譯該代碼時,消息「進程終止狀態3(0分鐘0秒(S ))「在我看來,我不明白是什麼問題。我谷歌它,但沒有發現任何可以幫助我...如果有人可以幫助我,我很困惑。過程終止狀態3 - 碼塊
什麼是頭文件(在編譯時)和庫(在鏈接時)沒有包含在內,所以編譯失敗是由於沒有包含'SDL'頭文件。 – user3629249
發佈的代碼ALSO並不乾淨地編譯,因爲'main()'的簽名是'int main(int argc,char * argv [])',但參數未被使用。建議使用其他有效簽名:'int main(void)' – user3629249
爲了便於閱讀和理解:1)始終縮進代碼。在每個大括號'{'後縮進。在每個大括號'}'之前unindent。爲每個縮進級別建議4個空格 – user3629249