Athletico 2020-06-09 15:57 采纳率: 72.7%
浏览 177
已采纳

各位大佬帮看看我的问题呗,谢谢啦

问题是这样的:

我在一个函数中定义了一个静态局部变量:static int x=0;

然后对x的操作是:x++;

然后我利用对二进制文件的操作:

fstream iofile ("D:x的值",ios::in | ios::out | ios::binary);

iofile.write( (char*)&x,sizeof(x));

这样就把x的值存放在磁盘文件里了。

问题:在第一次运行程序后很明显可知x的值为1,若第一次运行完之后,我关闭程序之后,再次打开此程序,在x++之前通过操作:iofile.read( (char*)&x,sizeof(x));
得到x的值,此时x的值为 1 还是 0 呢?

由于我还不知道结果,我还想问问如果是0的话怎么样才能让 x 在第二次运行程序时为 1 呢?
这是我的大学计算机基础作业的一个关键点,想了好久没想出来,各位大佬帮看看吧,万分感谢!

  • 写回答

2条回答 默认 最新

  • threenewbee 2020-06-09 16:32
    关注

    每次程序运行,变量都是重新来过的。
    static int x=0;
    此时是0
    x++是1
    然后读取
    iofile.read( (char*)&x,sizeof(x));
    那么文件里的x是多少,就是多少

    如果你希望每次都累加1,那么可以读取后,再++再write

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥30 Matlab打开默认名称带有/的光谱数据
  • ¥50 easyExcel模板 动态单元格合并列
  • ¥15 res.rows如何取值使用
  • ¥15 在odoo17开发环境中,怎么实现库存管理系统,或独立模块设计与AGV小车对接?开发方面应如何设计和开发?请详细解释MES或WMS在与AGV小车对接时需完成的设计和开发
  • ¥15 CSP算法实现EEG特征提取,哪一步错了?
  • ¥15 游戏盾如何溯源服务器真实ip?需要30个字。后面的字是凑数的
  • ¥15 vue3前端取消收藏的不会引用collectId
  • ¥15 delphi7 HMAC_SHA256方式加密
  • ¥15 关于#qt#的问题:我想实现qcustomplot完成坐标轴
  • ¥15 下列c语言代码为何输出了多余的空格