《程序设计实习》 7. 输入输出和文件操作.pptVIP

  • 1
  • 0
  • 约4.29千字
  • 约 47页
  • 2021-08-03 发布于湖北
  • 举报

《程序设计实习》 7. 输入输出和文件操作.ppt

程序设计实习;输入和输出;与输入输出流操作相关的类;istream是用于输入的流类,cin就是该类的对象。 ostream是用于输出的流类,cout就是该类的对象。 ifstream是用于从文件读取数据的类。 ofstream是用于向文件写入数据的类。 iostream是既能用于输入,又能用于输出的类。 fstream 是既能从文件读取数据,又能向文件写入数据的类。;标准流对象;标准流对象;#include iostream using namespace std; int main() { int x,y; cin x y; freopen(test.txt,w,stdout); //将标准输出重定向到 文件 if( y == 0 ) //除数为0则在屏幕上输出错误信息 cerr error. endl; else cout x /y ; //输出结果到 return 0; };#include iostream using namespace std; int main() { double f; int n; freopen(“t.txt”,“r”,stdin); //cin被改为从 中读取数据 cin f n; cout f , n endl; return 0; }; istream operator (int a) { ……. return *this ; };istream getline(char * buf, int bufSize); 从输入流中读取bufSize-1个字符到缓冲区buf,或读到碰到‘\n’为止(哪个先到算哪个)。 istream getline(char * buf, int bufSize,char delim); 从输入流中读取bufSize-1个字符到缓冲区buf,或读到碰到delim字符为止(哪个先到算哪个)。 两个函数都会自动在buf中读入数据的结尾添加\0’。,‘\n’或delim都不会被读入buf,但会被从输入流中取走。如果输入流中‘\n’或delim之前的字符个数达到或超过了bufSize个,就导致读入出错,其结果就是:虽然本次读入已经完成,但是之后的读入就都会失败了。 可以用 if(!cin.getline(…)) 判断输入是否结束 ;bool eof(); 判断输入流是否结束 int peek(); 返回下一个字符,但不从流中去掉. istream putback(char c); 将字符ch放回输入流 istream ignore( int nCount = 1, int delim = EOF ); 从流中删掉最多nCount个字符,遇到EOF时结束。;#include iostream using namespace std; int main() { int x; char buf[100]; cin x; cin.getline(buf,90); cout buf endl; return 0; };流操纵算子;流操纵算子;控制浮点数精度的流操纵算子; 浮点数输出最多6位有效数字; 以小数点位置固定的方式输出; 取消以小数点位置固定的方式输出;设置域宽的流操纵算子;设置域宽的流操纵算子;#include iostream #include iomanip using namespace std; int main() { int n = 141; //1) 分别以十六进制、十进制、八进制先后输出 n cout 1) hex n dec n oct n endl; double x = 1234567.89,y = 12.34567; //2) 保留5位有效数字 cout 2) setprecision(5) x y endl; //3) 保留小数点后面5位 cout 3) fixed setprecision(5) x y endl ; //4) 科学计数法输出,且保留小数点后面5位 cout 4) scientific setprecision(5) x y endl ;; //5) 非负数要显示正号,输出宽度为12字符,宽度不足则用*填补 cout 5) showpos fixed setw(12) setfill(*) 12.1 endl; //6) 非负数不显示正号,输

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档