C++的输入输出流

1. cin的参数不匹配时,会返回false。使用clear()成员函数重置错误位,sync()成员函数清空输入流。

 1 #include<iostream>
 2 int chazhao(int* S, int low, int high, int key);
 3 void main()
 4 {
 5     int S[6] = {1,2,3,4,5,6};
 6     int low = 0;
 7     int high = 5;
 8     int key = 3;
 9 
10     int a;
11     char str2[20];
12     std::cin >> a;
13 //    std::cin.getline(str,20);
14     std::cout << "------------\n";
15     std::cout << a << std::endl;
16     if(std::cin.fail() == 1)
17     {
18         std::cout << "fail\n";
19         std::cin.clear();//重置错误位
20         std::cin.sync();//清空数据流
21     }
22         
23     std::cout << std::cin.fail() << std::endl;
24     std::cin.getline(str2, 20);
25     std::cout << str2 << std::endl;

 

posted @ 2017-10-09 15:42  sungnox  阅读(132)  评论(0编辑  收藏  举报