我正在做一個小項目,我想知道爲什麼這段代碼導致我的程序崩潰。fscanf正在崩潰程序
PLAYER_FILE_PATH - 「player.txt」
sprite=yoshi.bmp
width=64
height=64
frames=8
alignment=1
animate=1
程序
FILE *pfile = fopen(PLAYER_FILE_PATH, "r");
if (!pfile)
{
debug_printf("could not open player file for reading!\n");
return;
}
fscanf(pfile, "sprite=%s\n\
width=%d\n\
height=%d\n\
frames=%d\n\
alignment=%d\n\
animate=%d",
player_entity.entity_sprite.imgloc,
&player_entity.entity_sprite.width,
&player_entity.entity_sprite.height,
&player_entity.entity_sprite.frames,
&player_entity.entity_sprite.oscdir,
&player_entity.entity_sprite.osc);
fclose(pfile);
你能展示一個「player_entity」的定義嗎? – 2013-02-14 12:17:02
確保'player_entity.entity_sprite.imgloc'被正確分配(或者是一個與'player_entity'的生命週期相關的生命週期的緩衝區,或者是通過調用'malloc'來動態分配的)。 – LihO 2013-02-14 12:17:10
專業提示:** [請選擇不破](http://www.codinghorror.com/blog/2008/03/the-first-rule-of-programming-its-always-your-fault.html) **。 _您正在崩潰程序。 – sehe 2013-02-14 12:27:36