我正在用C ++开发一个简单的游戏,我希望将游戏结束时的最高分数写入文本文件中。我正在使用fstream首先读取最后保存的高分并将其与新的高分进行比较。文本文件中的输出看起来像这样(0НН),但不应该这样。我真的对此感到沮丧。
这是我的代码的一部分。

double score_num=0;
fstream datafile("score.pon"); //Declaration of variables

...

if(SPEED>score_num)
{
     score_num=SPEED;
}
//getting the score

...

datafile<<score_num; //Writing it to the file

最佳答案

#include <iostream>
#include <fstream>

using namespace std;
#define SPEED 12

int main()
{
    double score_num=0;
    ofstream datafile("score.pon"); //Declaration of variables


    if(SPEED>score_num)
    {
        score_num=SPEED;
    }
    //getting the score

    datafile<<score_num; //Writing it to the file
    return 0;
}


用ofstream代替fstream就像一个魅力。也许您应该显示更多代码?另外,关闭文件是一个好习惯:

datafile.flush();
datafile.close();


我会把错误处理留给你

09-06 16:41