摘要:輸入輸出流對象標準輸出流標準出湊和只是用于如果是錯誤時要輸出的標準輸入流對象常用的處理函數(shù)輸出字符輸入字符輸出字符串輸入字符串用來消除回車的字符串的輸入輸出要初始化不然會出現(xiàn)輸出后最后無導(dǎo)致輸出燙燙燙這里更安全只能輸入個多了只取前面?zhèn)€流控
1.輸入輸出流對象
cout:標準輸出流
cerr:標準出湊? 和cout(只是用于如果是錯誤時要輸出的)
cin? :? ?標準輸入
2.流對象常用的處理函數(shù)
輸出字符 put() 輸入字符:get()
輸出字符串:write() 輸入字符串getline()
char ch; cin.get(ch); cout << ch<
3.流控制字符//就是以你制定的要求去輸出
要加上頭文件#incude
boolalpha:? bool類型輸出true或者false
setbase(n):設(shè)置整數(shù)為n的進制進行輸出 n只能為8 16 10
int num = 10; cout << setbase(8) << num << endl; cout << setbase(10) << num << endl; cout << setbase(16) << num << endl;
setfill(‘一個字符’) : 設(shè)置填充字符
setw(n):設(shè)置輸出的寬度
int num = 10;cout<< setfill("s")<
setprecision :設(shè)值有效位數(shù)包括整數(shù)
double num = 3.14159; cout << setprecision(4) << num << endl; cout << setprecision(4) << num * 10 << endl;
前面一個是3.141后面一個是31.41
?setiosflags(ios::left)//對齊方式左對齊setiosflagsios(ios:right)右對齊
?二 . 字符流操作
頭文件 #include
字符流一般使用stringstream的對象
包括isringstream?ostingstream?stringstream
一般用stringstream(可讀可寫)
stringstream的成員函數(shù)
string.str()//獲取字符流對象中的字符串
string.str(const string&str)//改變字符流中的字符串
?stringstream s("sdflk"); cout << s.str() << endl; s.str("ljsflk"); s.str(string("sdljf")); //二種都可以 一個是構(gòu)建一個string的無名對象傳字符串 cout << s.str() << endl;?
字符流的一些基本操作
將數(shù)字轉(zhuǎn)換為字符串int num =1234;cout<> str;//stream流出到str這個字符串中cout << str << endl;
同時使用一個流對象多次轉(zhuǎn)換的時候 必須使用clear清除同時也要二次流入在流出
不然是空流
stringstream stream; stream << num;//將num流入stream這個類中 stream >> str;//stream流出到str這個字符串中 cout << str << endl; string str2; //如果沒有clear函數(shù)就沒有把num流入到num2 stream.clear(); stream << num; stream >> str2; cout << str2 << endl;
?三. 文件流流類
?頭文件 #include
?ofstream:打開文件,寫文件
ifstream:打開文件,讀操作
fstream:可讀可寫
mode:
ios::in 讀的方式打開文件
ios::out 寫的方式打開文件
ios::app追加的方式寫文件
ios::ate 在已有的文件,文件指針指向文件末尾
ios::trunc文件不存在,創(chuàng)建文件
ios::binary二進制形式打開文件,默認方式是ascii碼方式打開
ios::nocreat不創(chuàng)建的方式
ios::noreplace 不替換
組合方式使用? 用的是位或
?ios::in|ios::out 可讀寫
ios::out|ios::binary二進制寫的方式打開文件
判斷文件是不是打開成功(防御性操作)
is_open()判斷打開是否成功
!文件對象? 判斷打開文件是否成功
fstream File; File.open("1.tex", ios::in | ios::out | ios::trunc); if (!File.is_open()) { cout << "創(chuàng)建文件失敗" << endl; } if (!File) { cout << "創(chuàng)建文件失敗" << endl; }
?文件的讀寫操作
fstream Read("1.txt",ios::in);//讀的方式打開文件///要有這個文件fstream Write("2.txt",ios::out|ios::trunc);//寫的方式打開文件//沒有這個文件就創(chuàng)建一個 while (1) { char ch; Read.get(ch); if (Read.eof()) { break; } Write.put(ch); } Read.close(); Write.close();
四.文件指針定位
?ifstream://讀
? ? ? ?istream&seekg(longt int pos);
? ? ? ?istream&seekg(long int pos,ios_base::seekdir begin)
ofstream://寫
? ? ? ? ostream&seekp(long int pos):
? ? ? ? ostream&seekp(long int pos,ios_base::seekdir begin);
//ios_base::seekdir//位置
ios::beg 文件開始
ios::cur 文件當前
ios::end 結(jié)束位置
fstream read("1.txt", ios::in); read.seekg(5);//移動5個字節(jié)后 char ch = read.get();//讀取5個位置后的第一個 cout << ch << endl;
空格也算
?文件的一些指向操作
fstream read("1.txt", ios::in); read.seekg(5);//移動5個字節(jié)后 char ch = read.get();//讀取5個位置后的第一個 cout << ch << endl; read.seekg(0, ios::beg); ch = read.get(); cout << ch << endl; read.seekg(-5, ios::end);//最后位置前面5個 ch = read.get(); cout << ch << endl;
?
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/123731.html
摘要:二中流的概念中的流是對一種有序連續(xù)且具有方向性的數(shù)據(jù)的抽象描述。用來進行標準錯誤的輸出。在使用時候必須要包含文件并引入標準命名空間。實際是在其底層維護了一個類型的對象用來保存結(jié)果??梢允褂脤⒆尫祷仄涞讓拥膶ο蟆? ?本文對比了C語言的輸入與輸出,介紹了流的概念、C++IO流以及stringst...
摘要:輸出流類型,提供輸出操作一個對象,從標準輸入讀取數(shù)據(jù)。一個對象,向標準錯誤寫入消息。向一個給定文件寫入數(shù)據(jù)。完成這些操作后,在返回流之前,對流進行復(fù)位,使其處于有效狀態(tài)。 ...
摘要:本文作為直播介紹系列文的第篇,主要和大家談?wù)勚辈f(xié)議視頻推流等技術(shù)內(nèi)容直播協(xié)議流媒體分為直播和點播。使用語言編寫,支持多種協(xié)議相關(guān)網(wǎng)絡(luò)協(xié)議和移動設(shè)備的流媒體服務(wù)器。 近年來直播已成為互聯(lián)網(wǎng)行業(yè)的大熱話題,直播答題、游戲直播、競賽直播等層出不窮,直播早已成為人們耳熟能詳?shù)募夹g(shù)。事實上直播的興起不僅與新時代人們要求為自己代言的心理有關(guān),同時也得益于帶寬的提速和CDN技術(shù)的發(fā)展。伴隨著CDN...
閱讀 1978·2021-11-22 15:33
閱讀 3009·2021-11-18 10:02
閱讀 2622·2021-11-08 13:16
閱讀 1632·2021-10-09 09:57
閱讀 1378·2021-09-30 09:47
閱讀 2013·2019-08-29 13:05
閱讀 3074·2019-08-29 12:46
閱讀 1013·2019-08-29 12:19