預(yù)習(xí)嵌入式課程chap5流_第1頁(yè)
預(yù)習(xí)嵌入式課程chap5流_第2頁(yè)
預(yù)習(xí)嵌入式課程chap5流_第3頁(yè)
預(yù)習(xí)嵌入式課程chap5流_第4頁(yè)
預(yù)習(xí)嵌入式課程chap5流_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

流第五章回顧復(fù)制構(gòu)造函數(shù)復(fù)制賦值操作符類型轉(zhuǎn)換構(gòu)造函數(shù)目標(biāo)輸出流插入操作符<<輸出操縱符:格式化輸出數(shù)據(jù)輸入流提取操作符>>輸入操縱符:格式化輸入數(shù)據(jù)輸入/輸出流的概念C++將輸入和輸出看作字節(jié)流輸入來(lái)自標(biāo)準(zhǔn)輸入設(shè)備(鍵盤(pán)),或從其他輸入設(shè)備重新定向而來(lái)輸出發(fā)送到標(biāo)準(zhǔn)輸出設(shè)備或其他輸出設(shè)備C++為每一個(gè)流關(guān)聯(lián)一個(gè)緩沖區(qū)輸入/輸出流的定義流是字符集合或數(shù)據(jù)流的源或目的地有兩種流輸出流輸入流預(yù)定義的流每個(gè)流都與一個(gè)特定的類關(guān)聯(lián)。預(yù)定義的流在iostream.h中定義cin 標(biāo)準(zhǔn)輸入流,默認(rèn)是鍵盤(pán)cout 標(biāo)準(zhǔn)輸出流,默認(rèn)是屏幕cerr 標(biāo)準(zhǔn)錯(cuò)誤流(非緩沖),默認(rèn)是屏幕clog 標(biāo)準(zhǔn)錯(cuò)誤流(緩沖),默認(rèn)是屏幕voidmain(){ inti; cout<<"inputnum:"<<endl; cin>>i; cout<<i; cerr<<++i; clog<<"aaa";}輸出流——基本對(duì)象和流插入ostream類包含為輸出操作定義的函數(shù)標(biāo)準(zhǔn)流上的輸出是使用cout對(duì)象實(shí)現(xiàn)的流插入:實(shí)現(xiàn)輸出操作的函數(shù)ostream類為實(shí)現(xiàn)輸出重載了操作符“<<”輸出流——插入操作符示例:

cout<<variablename;variablename可以是任何基本數(shù)據(jù)類型插入操作符右邊的內(nèi)容到左邊的流對(duì)象中屏幕是默認(rèn)的輸出流輸出流——其他輸出函數(shù)ostream類還提供其他輸出函數(shù)Ostream&put(char)–輸出字符 cout.put('a').put('b').put('c').put('d');Ostream&write(constchar*,int)–輸出字符串Cout.write(“hello”,5).write(name,strlen(name));輸出流——輸出操作符號(hào)輸出操縱符提供了格式化數(shù)據(jù)的簡(jiǎn)單方法flush()可用來(lái)清空輸出緩沖區(qū)cout<<"C++的I/O需要刷新。"<<flush;endl()輸出一個(gè)換行符cout<<"C++中的I/O是不同的。"<<endl;輸出流——輸出操作符號(hào)width()函數(shù)或setw(intw)用于設(shè)置下一個(gè)輸出的字段寬度,默認(rèn)是0#include<iostream.h>voidmain(){cout<<"默認(rèn)域?qū)?"<<cout.width()<<"\n";cout<<"[";

cout.width(10); //將寬度設(shè)置為10cout<<"A";cout<<"]";}輸出流——輸出操作符號(hào)fill()函數(shù)用于設(shè)置填充字符,默認(rèn)是空格。如果指定的寬度大于實(shí)際的輸出,C++用空格填充多余的位置#include<iostream.h>voidmain(){intamt1=100,amt2=12345;

cout.fill('*'); //用*填充多余的空間

cout<<"總數(shù)1:[";cout.width(5);cout<<amt1<<"]\n";cout<<"總數(shù)2:[";cout.width(5);cout<<amt2<<"]\n";}輸出流——輸出操作符號(hào)原型Longsetf(longflagbit,longfield)cout.setf(ios::left,ios::adjustfield)cout.setf(ios::right,ios::adjustfield)cout.setf(ios::hex);//,ios::basefield);voidmain(){intnumber=0x10;cout.setf(ios::dec);cout<<"Decimal:"<<number<<endl;//cout.unsetf(ios::dec);cout.setf(ios::hex|ios::showbase);cout<<"Hexadecimal:"<<number<<endl;intnumber1=0x10;cout<<"Decimal:"<<hex<<number1<<endl<<"Hexadecimal:"<<dec<<number1<<endl;}輸入流——基本對(duì)象istream類包含為輸入操作定義的函數(shù)來(lái)自標(biāo)準(zhǔn)流的輸入是使用cin對(duì)象實(shí)現(xiàn)的cin與標(biāo)準(zhǔn)輸入設(shè)備(鍵盤(pán))相關(guān)聯(lián)istream類為實(shí)現(xiàn)輸入重載了操作符“>>”輸入流——提取操作符示例: intvariablename;

cin>>variablename;等待用戶輸入從鍵盤(pán)的數(shù)據(jù)將存儲(chǔ)在變量variablenameCin>>name>>age>>sex;在提取任意數(shù)據(jù)類型時(shí),將跳過(guò)前導(dǎo)空白字符(‘

’、’\n’、‘\t’)直到遇到非空字符輸入流——其他輸入函數(shù)(get()getline().cpp)istream類還提供其他輸入函數(shù)get(char&ch)–

將輸入的字符存儲(chǔ)在ch中。它獲取輸入的下一個(gè)字符,即使它是一個(gè)空白字符getline()–

類似于get()函數(shù)get()和getline()的區(qū)別get()在輸入流中保留換行符,而getline()則從流中提取并丟棄換行符main()

{

charch;

ch=cin.get();

//或者cin.get(ch);

cout<<ch<<endl;

chara[20];

cin.get(a,20);

cout<<a<<endl;

charm[20];

cin.getline(m,5);

cout<<m<<endl;

}輸入流——輸入操縱符操縱符提供了格式化數(shù)據(jù)的簡(jiǎn)單方法skipws-在提取(“>>”)時(shí)跳過(guò)空白字符cin.setf(ios::skipws);skipws-在提取(“>>”)時(shí)不跳過(guò)空白字符cin.unsetf(ios::skipws);輸入流——輸入操縱符#include<iostream.h>intmain(){intcount=0;charch;

cin.unsetf(ios::skipws);//不忽略空格

cin>>ch;while(ch!='.'){count++;cin>>ch;}cout<<endl;cout<<"共有:"<<count<<"個(gè)字符"<<endl;return0;}輸入/輸出操縱符設(shè)置輸入或輸出數(shù)字的基數(shù)hex-以十六進(jìn)制顯示整數(shù)oct-以八進(jìn)制顯示整數(shù)dec-以十進(jìn)制顯示整數(shù)總結(jié)輸出流插入操作符輸出操縱符輸入流提取操作符輸入操縱符練習(xí)編寫(xiě)一個(gè)程序,該程序可以實(shí)現(xiàn)使用setf()操作

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論