一,c++輸入和輸出的概述
1)流和緩衝區
流是程式和源流或流目標之間的橋梁
磁碟驅動器以512位元組(或更多)的塊為單位傳輸資訊,程式通常每次只能處理乙個位元組資訊。所以緩衝區用來匹配這兩種不同的資訊傳輸速率。
輸出時,先填滿緩衝區,然後把整塊資料傳輸給硬碟,並清空緩衝區,以備下一批輸出使用。
2)isotream類管理細節
cin 物件對應於標準輸入流,關聯到標準輸入裝置。wcin 對應 wchar_t
cout 標準輸出流,wcout 對應 wchar_t
cerr 標準錯誤流,沒有緩衝直接傳送給螢幕,而不會等到緩衝區填滿或新的換行符,wcerr對應 wchar_t
clog 標準錯誤流,有緩衝區,wclog對應 wchar_t
二,使用cout進行輸出
1)過載<< 操作符 : ostream & operator<<(int);
c++指向字串儲存位置的指標來表示字串
#include using namespace std;
int main()
} catch(ios_base::failure &bf)//抓設定的錯誤 }
else
cout<<"i can't go on!"<
則跳過非法輸入,使得輸入正常進行。
#include #include using namespace std;
int main()
if(cin.fail()&&!cin.eof())
} else
cout<<"i can't go on!"<>input)
cout<<"last value entered = "<6)
單字元的輸入
char c=cin.get(); //返回 int
cin.get(c); //返回 cin
不會跳過空格、換行符等
7)字串輸入
getline(); //抽取並丟棄輸入流中的換行符
get(); //換行符留在輸入流
get(char *,int ,char); // 要讀入的字串,個數,結束符
get(char *,int) //換行符預設為結束符
getline(char *, int ,char)
getline(char *,int)
例如:char line[50]; cin.get(line,50);
cin.ignore(int ,char ) //讀取並丟棄接下來的255個字元,或者到結束符為止
8)其他istream方法
1>char gross[20];
read(gross,20); //不會在讀取字元後面加上 『\0』 因此不能講輸入轉化為字串
2>peak();//下乙個要讀取的字元
while((ch=cin.peak())!='.'&&ch!='\n')
cin.get(great_input[i++]);
3>cin.putback(ch) //將字元ch插入到輸入流
#include #include using namespace std;
int main()
#include #include using namespace std;
const char *filename = "test.bat";
int main()
{ if(!fout.is_open())
{ cerr<<"con't open"<>ch; //讀取第乙個字元
cout<
C primer 第十七章 輸入 輸出和檔案
一,c 輸入和輸出的概述 1 流和緩衝區 流是程式和源流或流目標之間的橋梁 磁碟驅動器以512位元組 或更多 的塊為單位傳輸資訊,程式通常每次只能處理乙個位元組資訊。所以緩衝區用來匹配這兩種不同的資訊傳輸速率。輸出時,先填滿緩衝區,然後把整塊資料傳輸給硬碟,並清空緩衝區,以備下一批輸出使用。2 is...
C primer 第十七章 輸入 輸出和檔案
一,c 輸入和輸出的概述 1 流和緩衝區 流是程式和源流或流目標之間的橋梁 磁碟驅動器以512位元組 或更多 的塊為單位傳輸資訊,程式通常每次只能處理乙個位元組資訊。所以緩衝區用來匹配這兩種不同的資訊傳輸速率。輸出時,先填滿緩衝區,然後把整塊資料傳輸給硬碟,並清空緩衝區,以備下一批輸出使用。2 is...
第十七章 Size Classes
通常,您希望應用程式的介面根據螢幕的尺寸和方向而顯示不同的布局。在本章中,您將修改homepwner中的detailviewcontroller的介面,以便當它出現在具有相對較小高度的螢幕上時,文字字段集合和影象檢視併排而不是堆疊在一起 圖17.1 圖17.1 homepwner 的 detailv...