C ++高分列表调试错误

时间:2015-05-09 01:32:53

标签: c++ arrays visual-studio-2010 vector data-structures

编辑代码: 我现在能够在文件中写入时钟时间,但问题是,它不完全是时钟时间。它会写出奇怪的数字,例如00F3D ..等等。我不知道它是否应该是因为时钟的时间在字符串格式中包含冒号,例如:0:12

// Used for Highscores
struct highscore
{
    char name[10]; 
    int zombiesKilled; 
    char Date[10];
    char *clock[10];
}; 

void highscoreBoard(int option, int zombKilled)
{
    int quanity = 0; 
    int playerScore = 0;        // the in Results for Highscores
    FILE *streaming; 
    highscore data[10];


    char *newClock = new char[clockData.clockTime.length() + 1]; 
    strcpy(newClock,clockData.clockTime.c_str());
    switch (option)
    {

}

2 个答案:

答案 0 :(得分:1)

您的highscore结构中包含string clockstring类型的对象不适合直接从内存写入文件,因为它们可能包含指向内存其他部分的指针。

以下是两个解决方案:将clock更改为与其他结构成员一样的char数组,或者不使用高分的二进制写入,将文件写为文本(更多复杂,但导致人类可读的文件。)

答案 1 :(得分:0)

创建文件后是否设置了文件权限?似乎权限已被设置为无读,无写,无执行。