小白问一个问题,关于good()函数的

迷路的公民 2013-03-18 12:36:55
用ifstream载入一个txt文件,里面含有整型数据和字符,要用good()函数判断输入流文件是否正确,怎么做才能过good()函数?不能用其他的函数替代
...全文
432 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
迷路的公民 2013-03-18
  • 打赏
  • 举报
回复
版主用的是vs2010吗?左边怎么有行数显示的?我以前用的只有在底部显示行数和列数
迷路的公民 2013-03-18
  • 打赏
  • 举报
回复
谢谢各位的关心,我没说清楚问题,不好意思,我问的问题是一个txt文件,开头有两个整形数据,后面都是符号,载入后用good()函数判断是否正确,正确才进行下一步操作 ifstream ifs(fname,ios::in); if (ifs.good()) { ifs >> mazeWidth >> mazeHeight; for (int i=0;i<mazeHeight;i++) for (int j=0;j<mazeWidth;j++) ifs >> maze[i][j]; ifs.close(); return true; } else { cerr << "File not found." << endl; return false; } 每次编译运行载入文件都显示“File not found."过不了这个good()函数
rocktyt 2013-03-18
  • 打赏
  • 举报
回复
bad和good并不是对应的 http://cplusplus.com/reference/ios/ios/bad/ ios流有多种状态,只有fail是和!运算符相对应的,其余的都没有替代
smallear1231 2013-03-18
  • 打赏
  • 举报
回复
引用 4 楼 sha_jinhao 的回复:
引用 3 楼 smallear1231 的回复:引用 2 楼 sha_jinhao 的回复:C/C++ code?1234567891011121314// basic_ios_bad.cpp// compile with: /EHsc#include <iostream> int main( void ) { using namespace std; bool ……
O ,3q
jimette 2013-03-18
  • 打赏
  • 举报
回复
引用 3 楼 smallear1231 的回复:
引用 2 楼 sha_jinhao 的回复:C/C++ code?1234567891011121314// basic_ios_bad.cpp// compile with: /EHsc#include <iostream> int main( void ) { using namespace std; bool b = cout.bad( ); cout ……
2010
smallear1231 2013-03-18
  • 打赏
  • 举报
回复
引用 2 楼 sha_jinhao 的回复:
C/C++ code?1234567891011121314// basic_ios_bad.cpp// compile with: /EHsc#include <iostream> int main( void ) { using namespace std; bool b = cout.bad( ); cout << boolalpha; cout <……
版主使用的是什麽编译器啊
jimette 2013-03-18
  • 打赏
  • 举报
回复
// basic_ios_bad.cpp
// compile with: /EHsc
#include <iostream>

int main( void ) 
{
   using namespace std;
   bool b = cout.bad( );
   cout << boolalpha;
   cout << b << endl;

   b = cout.good( );
   cout << b << endl;
}
  • 打赏
  • 举报
回复
ifstream 中有一个流标志,如果你的文件打开出错(或者读取出错等一系列定义了的错误),则这个标志位就会被设置成bad标志,这样就说明流有问题。 good()就是返回这个流标志中正确标志位的值是不是有效的。

64,652

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧