最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++語(yǔ)言io流處理基本操作教程示例

 更新時(shí)間:2021年11月18日 10:56:46   作者:xr415  
這篇文章主要為大家介紹了C++語(yǔ)言io流處理的基本操作示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步

一、輸入輸出流對(duì)象

cout:標(biāo)準(zhǔn)輸出流

cerr:標(biāo)準(zhǔn)出湊  和cout(只是用于如果是錯(cuò)誤時(shí)要輸出的)

cin  :   標(biāo)準(zhǔn)輸入

流對(duì)象常用的處理函數(shù)

輸出字符 put()

輸入字符:get()

輸出字符串:write()

輸入字符串getline()

char ch;
	cin.get(ch);
	cout << ch<<endl;
	cout.put(ch);
	getchar();//用來(lái)消除回車的
	cout << endl;
	//字符串的輸入輸出
	char str[20] = "";//要初始化不然會(huì)出現(xiàn)輸出后最后無(wú)/0導(dǎo)致輸出燙燙燙...
	cin.getline(str, 20);//這里更安全只能輸入20個(gè) 多了只取前面20個(gè)
	cout.write(str,20);

流控制字符

//就是以你制定的要求去輸出

要加上頭文件#incude<iomanip>

boolalpha:  bool類型輸出true或者false

setbase(n):設(shè)置整數(shù)為n的進(jìn)制進(jìn)行輸出 n只能為8 16 10

    int num = 10;
	cout << setbase(8) << num << endl;
	cout << setbase(10) << num << endl;
	cout << setbase(16) << num << endl;

setfill(‘一個(gè)字符') : 設(shè)置填充字符

setw(n):設(shè)置輸出的寬度

int num = 10;
cout<< setfill('s')<<setw(8) << num;

setprecision :設(shè)值有效位數(shù)包括整數(shù)

	double num = 3.14159;
	cout << setprecision(4) << num << endl;
	cout << setprecision(4) << num * 10 << endl;

前面一個(gè)是3.141后面一個(gè)是31.41

setiosflags(ios::left)//對(duì)齊方式左對(duì)齊setiosflagsios(ios:right)右對(duì)齊

二、字符流操作

頭文件 #include<sstream>

字符流一般使用stringstream的對(duì)象

sstream

包括 isringstream  ostingstream  stringstream

一般用stringstream(可讀可寫)

stringstream的成員函數(shù)

string.str()//獲取字符流對(duì)象中的字符串

string.str(const string&str)//改變字符流中的字符串

​stringstream s("sdflk");
	cout << s.str() << endl;
	s.str("ljsflk");
	s.str(string("sdljf"));
	//二種都可以 一個(gè)是構(gòu)建一個(gè)string的無(wú)名對(duì)象傳字符串
	cout << s.str() << endl;
 
​

字符流的一些基本操作

將數(shù)字轉(zhuǎn)換為字符串
int num =1234;
cout<<to_string(num)<<endl//以字符串輸出num
stringstream stream;
stream << num;//將num流入stream這個(gè)類中
stream >> str;//stream流出到str這個(gè)字符串中
cout << str << endl;

同時(shí)使用一個(gè)流對(duì)象多次轉(zhuǎn)換的時(shí)候 必須使用clear清除同時(shí)也要二次流入在流出

不然是空流

stringstream stream;
	stream << num;//將num流入stream這個(gè)類中
	stream >> str;//stream流出到str這個(gè)字符串中
	cout << str << endl;
	string str2;
    //如果沒(méi)有clear函數(shù)就沒(méi)有把num流入到num2
	stream.clear();
	stream << num;
	stream >> str2;
	cout << str2 << endl;

三. 文件流流類

 頭文件 #include<fstream>//ifstream 和ofstream

ofstream:打開文件,寫文件

ifstream:打開文件,讀操作

fstream:可讀可寫

mode:

ios::in 讀的方式打開文件

ios::out 寫的方式打開文件

ios::app追加的方式寫文件

ios::ate 在已有的文件,文件指針指向文件末尾

ios::trunc文件不存在,創(chuàng)建文件

ios::binary二進(jìn)制形式打開文件,默認(rèn)方式是ascii碼方式打開

ios::nocreat不創(chuàng)建的方式

ios::noreplace 不替換

組合方式使用 

用的是位或

ios::in|ios::out 可讀寫

ios::out|ios::binary二進(jìn)制寫的方式打開文件

判斷文件是不是打開成功(防御性操作)

is_open()判斷打開是否成功

!文件對(duì)象  判斷打開文件是否成功

	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);//讀的方式打開文件///要有這個(gè)文件
fstream Write("2.txt",ios::out|ios::trunc);
//寫的方式打開文件//沒(méi)有這個(gè)文件就創(chuàng)建一個(gè)
	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 文件當(dāng)前

ios::end 結(jié)束位置

fstream read("1.txt", ios::in);
	read.seekg(5);//移動(dòng)5個(gè)字節(jié)后
	char ch = read.get();//讀取5個(gè)位置后的第一個(gè)
	cout << ch << endl;

空格也算

文件的一些指向操作

	fstream read("1.txt", ios::in);
	read.seekg(5);//移動(dòng)5個(gè)字節(jié)后
	char ch = read.get();//讀取5個(gè)位置后的第一個(gè)
	cout << ch << endl;
	read.seekg(0, ios::beg);
	ch = read.get();
	cout << ch << endl;
	read.seekg(-5, ios::end);//最后位置前面5個(gè)
	ch = read.get();
	cout << ch << endl;

以上就是C++語(yǔ)言io流處理基本操作示例的詳細(xì)內(nèi)容,更多關(guān)于C++語(yǔ)言io流處理的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • C/C++實(shí)現(xiàn)馬踏棋盤算法

    C/C++實(shí)現(xiàn)馬踏棋盤算法

    這篇文章主要為大家詳細(xì)介紹了C/C++實(shí)現(xiàn)馬踏棋盤算法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • 淺談C++反向迭代器的設(shè)計(jì)

    淺談C++反向迭代器的設(shè)計(jì)

    本文主要介紹了淺談C++反向迭代器的設(shè)計(jì),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • Qt結(jié)合OpenCV部署yolov5的實(shí)現(xiàn)

    Qt結(jié)合OpenCV部署yolov5的實(shí)現(xiàn)

    本文主要介紹了Qt結(jié)合OpenCV部署yolov5的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • C語(yǔ)言簡(jiǎn)明分析指針與引用的具體用法

    C語(yǔ)言簡(jiǎn)明分析指針與引用的具體用法

    指針是一個(gè)實(shí)體,引用是一個(gè)別名;在匯編上,引用的底層是以指針的方式實(shí)現(xiàn)的,定義一個(gè)引用變量,相當(dāng)于定義了一個(gè)指針,然后把引用內(nèi)存的地址寫到這個(gè)指針里面,當(dāng)通過(guò)引用變量修改它所引用的內(nèi)存時(shí),它先訪問(wèn)了指針里面的地址,然后在這個(gè)地址的內(nèi)存里面對(duì)值進(jìn)行修改
    2022-05-05
  • C語(yǔ)言近萬(wàn)字為你講透棧和隊(duì)列

    C語(yǔ)言近萬(wàn)字為你講透棧和隊(duì)列

    對(duì)于線性表,我們可能要執(zhí)行下列操作:訪問(wèn)表的第k個(gè)結(jié)點(diǎn)、在k這個(gè)結(jié)點(diǎn)之前或者之后插入一個(gè)新結(jié)點(diǎn),抑或是刪除第k個(gè)結(jié)點(diǎn)等等操作,其中我們會(huì)遇到值對(duì)第一個(gè)或者最后一個(gè)結(jié)點(diǎn)插入、刪除、和訪問(wèn)值的線性表,我們給它們以特殊的名稱:棧、隊(duì)列、雙端隊(duì)列
    2022-05-05
  • C++中extern

    C++中extern "C"的用法

    這篇文章主要介紹了C++中extern "C"的用法,是深入理解C++所應(yīng)該掌握的概念,需要的朋友可以參考下
    2014-08-08
  • C語(yǔ)言三分鐘精通時(shí)間復(fù)雜度與空間復(fù)雜度

    C語(yǔ)言三分鐘精通時(shí)間復(fù)雜度與空間復(fù)雜度

    算法復(fù)雜度分為時(shí)間復(fù)雜度和空間復(fù)雜度。其作用:?時(shí)間復(fù)雜度是度量算法執(zhí)行的時(shí)間長(zhǎng)短;而空間復(fù)雜度是度量算法所需存儲(chǔ)空間的大小
    2022-02-02
  • C語(yǔ)言中的指針以及二級(jí)指針代碼詳解

    C語(yǔ)言中的指針以及二級(jí)指針代碼詳解

    這篇文章主要介紹了C語(yǔ)言中的指針以及二級(jí)指針代碼詳解,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01
  • C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單飛機(jī)大戰(zhàn)

    C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單飛機(jī)大戰(zhàn)

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單飛機(jī)大戰(zhàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • C語(yǔ)言算法練習(xí)之抓交通肇事犯

    C語(yǔ)言算法練習(xí)之抓交通肇事犯

    這篇文章主要該大家分享C語(yǔ)言算法抓交通肇事犯的練習(xí),文章主要通過(guò)描述抓交通肇事犯得問(wèn)題然后確定程序框架將結(jié)果運(yùn)算出來(lái),下面來(lái)看詳細(xì)內(nèi)容吧,需要的朋友可以參考一下
    2022-03-03

最新評(píng)論

昌宁县| 讷河市| 江西省| 五指山市| 奉贤区| 芜湖市| 无锡市| 隆回县| 新建县| 永善县| 通化市| 德令哈市| 金华市| 平安县| 泰和县| 和林格尔县| 西盟| 侯马市| 金溪县| 济阳县| 象山县| 晋城| 海城市| 万源市| 云霄县| 乐昌市| 鄂州市| 凌源市| 永昌县| 噶尔县| 平凉市| 多伦县| 巴青县| 察哈| 阿尔山市| 高雄县| 阜城县| 深圳市| 南和县| 铜山县| 商丘市|