C++读写文件出错

C++读写文件出错,第1张

ios::nocreate是在C++标准制定之前在<fstream.h>中有定义的。

但是因为它跟系统平台相关密切,所以在C++标准中去掉了对它的支持。

从 vs 2003 开始,微软用一个新的 iostream 替换了原来的。新包中没有 nocreate 标识符。

原来 ifstream 中的 open 函数默认打开就是不创建文件。如果没有这个文件则打开出错,而不是创建文件。详见代码运行结果:

改成这样就好了:

ifstream is("fraps64",ios::binary )

你的书,可能版本太旧了,没及时跟进。

#include <iostream>

#include <fstream>

using namespace std

int main()

{

ifstream f("c:\\1.cpp", ios::binary)// 改为自己的路径

ofstream of("c:\\1.txt", ios::binary)// 改为自己的路径

char ch

while(f.read(&ch, 1))

{

of.put(ch)

}

cin.get()

return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11696678.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存