为什么SDL_RWFromFile(文件,“w +”)不会像它应该的那样读写?它只打开文件写

时间:2017-03-26 08:16:17

标签: c++ sdl

有人可以向我解释为什么这段代码无法按预期工作。似乎SDL_RWFromFile使用w +模式只适用于写入和不读和写,因为它应该......我做错了什么

我不希望有一个不同的阅读处理程序和另一个用于编写的处理程序

#include <iostream>
#include <SDL.h>

using namespace std;

int main(int argc,char* args[])
{
    SDL_Init(SDL_INIT_VIDEO);

    int scores=2;

    SDL_RWops* rwScore=SDL_RWFromFile("highscore.dat","w+");

    SDL_RWwrite(rwScore,&scores,sizeof(int),1);


    int fromfile=0;

    SDL_RWread(rwScore,&fromfile,sizeof(int),1);

    cout<<fromfile<<endl;



    return 0;
}

这打印出0;

1 个答案:

答案 0 :(得分:0)

您的问题出在orderitemid orderid itemid quantity price createdate 1 1 12 5 15.5 2016-12-04 11:35:02.06629 2 1 17 5 13.2 2016-12-04 11:32:02.06629 3 2 12 2 12.5 2016-12-05 11:35:02.06629 4 2 17 1 12.6 2016-12-05 11:35:02.06629 5 2 18 15 14.5 2016-12-04 11:35:02.06629 6 3 12 45 3 2015-12-04 11:35:02.06629 ,意思是:

  

写入/更新:创建一个空文件并打开它进行更新(两者都是   输入和输出)。如果已存在具有相同名称的文件   内容被丢弃,文件被视为新的空文件

请参阅此处所有标志的说明:

https://wiki.libsdl.org/SDL_RWFromFile