歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> C++輸入輸出緩沖區的概念

C++輸入輸出緩沖區的概念

日期:2017/3/1 10:06:30   编辑:Linux編程
看到了cin.ignore()函數.不懂就上網找了用法,擴展了緩沖區這個概念.

cin.ignore(a,ch)方法是從輸入流(cin)中提取字符,提取的字符被忽略(ignore),不被使用。每拋棄一個字符,它都要計數和比較字符:如果計數值達到a或者被拋棄的字符是ch,則cin.ignore()函數執行終止;否則,它繼續等待。它的一個常用功能就是用來清除以回車結束的輸入緩沖區的內容,消除上一次輸入對下一次輸入的影響。比如可以這麼用:cin.ignore(1024,'\n'),通常把第一個參數設置得足夠大,這樣實際上總是只有第二個參數'\n'起作用,所以這一句就是把回車(包括回車)之前的所以字符從輸入緩沖(流)中清除出去。

#include <iostream>
using namespace std;
void main()
{
int a,b,c;
cout<<"input a:";
cin>>a;
cin.ignore(1024, '\n');
cout<<"input b:";
cin>>b;
cin.ignore(1024, '\n');
cout<<"input c:";
cin>>c;
cout<<a<<"\t"<<b<<"\t"<<c<<endl;
}

如果沒有cin.ignore(),可以一次輸入3個數,用空格隔開就好了。。可是非常不美觀。。有了cin.ignore()函數這樣才是我們想要的結果。
Copyright © Linux教程網 All Rights Reserved