[英]C fscanf doesn't load integers but loads strings
此函数正确加载字符串但不加载整数。 为什么?
void loadaj(){
FILE * save;
save=fopen("sejv.txt","r");
if(save==NULL){
slovkaj("\n Nema spremljenog lika\n Stisni bilo koju tipku za nastavak...",5);
getch();
system("cls");
}
if(save!=NULL){
rewind(save);
fscanf(save,"%s %s %[^\n] %[^\n] %s %s %s %s %s",ime,klasa,oruzje,strijele,glava,ruke,jezgra,noge,stit);
fflush(save);
//fscanf(save,"%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d",ziva,ziva2,ziva3,xp,xpZaLvlUp,maxVitalnost,vitalnost,novci,stetaOruzja,oklopGlava,oklopRuke,oklopJezgra,oklopNoge,oklopStit,stetaStrijela,knjiga,teleportacijaDaljina,vjetarDaljina,vatraSteta,vodaSteta,ledSteta,teleportacijaXp,teleportacijaLvl,vjetarXp,vjetarLvl,vodaXp,vodaLvl,ledXp,ledLvl,smrtLvl,grad);
fscanf(save,"%d",ziva);
savePostoji=true;
}
fclose(save);
}
fscanf
也适用于整数。 导致问题的是fflush
。 fflush
在这里清除输入缓冲区。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.