rewerr.cpp

来自「本课程主要介绍面向对象程序设计的方法和c++语言的基本概念。以c++语言中的面向」· C++ 代码 · 共 46 行

CPP
46
字号
// rewerr.cpp
// handles errors during input and output
#include <fstream>     //for file streams
#include <iostream>
using namespace std;
#include <process.h>   //for exit()

const int MAX = 1000;
int buff[MAX];

int main()
   {
   for(int j=0; j<MAX; j++)            //fill buffer with data
      buff[j] = j;
   ofstream os;                        //create output stream
                                       //open it
   os.open("a:edata.dat", ios::trunc | ios::binary);
   if(!os)
      { cerr << "Could not open output file\n"; exit(1); }

   cout << "Writing...\n";             //write buffer to it
   os.write( reinterpret_cast<char*>(buff), MAX*sizeof(int) );
   if(!os)
      { cerr << "Could not write to file\n"; exit(1); }
   os.close();                         //must close it

   for(j=0; j<MAX; j++)                //clear buffer
      buff[j] = 0;

   ifstream is;                        //create input stream
   is.open("a:edata.dat", ios::binary);
   if(!is)
      { cerr << "Could not open input file\n"; exit(1); }

   cout << "Reading...\n";             //read file
   is.read( reinterpret_cast<char*>(buff), MAX*sizeof(int) );
   if(!is)
      { cerr << "Could not read from file\n"; exit(1); }

   for(j=0; j<MAX; j++)                //check data
      if( buff[j] != j )
         { cerr << "\nData is incorrect\n"; exit(1); }
   cout << "Data is correct\n";
   return 0;
   }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?