c++文件打开不成功?

ifstreamf;f.open("pass.txt",ios::in);if(f.good())AfxMessageBox("文件打开成功!");else{AfxMes... ifstream f;
f.open("pass.txt",ios::in);
if(f.good())
AfxMessageBox("文件打开成功!");
else
{
AfxMessageBox("文件打开失败!");
PostQuitMessage(0);
}

第一次运行,总说文件打开失败,文件不存在是不应该创建的嘛?
f.open("pass.txt",ios::in|ios::out|ios::app); 为什么改成这样就能创建了?
展开
 我来答
寒寒家
推荐于2016-01-18 · TA获得超过2919个赞
知道大有可为答主
回答量:1482
采纳率:100%
帮助的人:1958万
展开全部
因为ios::in代表是从文件中往内存里读数据,所以要求文件必须得先存在才行。

ios::out则是代表从内存里往文件里写输出,所以文件可以不存在,在不存在的时候,会创建新的文件。
第二条语句中包含了ios::out所以会在没有文件的时候创建。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式