ハイスコアについて2
Posted: 2011年2月15日(火) 18:24
さきほどハイスコアの格納についてアドバイスいただいたのを参考に
void high_score(void){
FILE *file;
if(flag == 0){
file = fopen("hi_score1.txt","r+");
fscanf(file,"%d",&highscore);
DrawFormatString(200,30,Cr2,"ハイスコア:%d",highscore);
}
if(flag == 2){
file = fopen("hi_score1.txt","r+");
if(highscore <= lastscore) fprintf(file,"%d",lastscore);
}
fclose(file);
}
という関数を作ったんですがfprintfがうまくできずかなりでかい数字がはいってしまいます。
どのようになおせばいいでしょうか?
(使用している変数はすべて関数の外で定義しているint型の整数で、入っている値自体に問題はありませんでした。)
またコンパイル時に
warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
'fopen' の宣言を確認してください。
といった警告文が三つほどでてるんですが関係があるんでしょうか?
void high_score(void){
FILE *file;
if(flag == 0){
file = fopen("hi_score1.txt","r+");
fscanf(file,"%d",&highscore);
DrawFormatString(200,30,Cr2,"ハイスコア:%d",highscore);
}
if(flag == 2){
file = fopen("hi_score1.txt","r+");
if(highscore <= lastscore) fprintf(file,"%d",lastscore);
}
fclose(file);
}
という関数を作ったんですがfprintfがうまくできずかなりでかい数字がはいってしまいます。
どのようになおせばいいでしょうか?
(使用している変数はすべて関数の外で定義しているint型の整数で、入っている値自体に問題はありませんでした。)
またコンパイル時に
warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
'fopen' の宣言を確認してください。
といった警告文が三つほどでてるんですが関係があるんでしょうか?