溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

iOS開發(fā)篇——C++輸入與輸出

發(fā)布時(shí)間:2020-06-19 19:00:54 來源:網(wǎng)絡(luò) 閱讀:1420 作者:藍(lán)鷗李靜波 欄目:移動(dòng)開發(fā)

藍(lán)鷗iOS培訓(xùn)講師推薦:本節(jié)繼續(xù)為大家?guī)鞢++的介紹,具體內(nèi)容如下:

在C++中輸入和輸出并不是正式組成成分,C和C++本身都沒有為輸入和輸出提供特別的語句結(jié)構(gòu),輸入/輸出不是由C++本身定義的,是在編譯系統(tǒng)提供的I/O庫中定義的。

C++輸出和輸入是用“流”的方式實(shí)現(xiàn)的,表示C++通過流進(jìn)行輸入輸出的過程,如下圖:

iOS開發(fā)篇——C++輸入與輸出

iOS開發(fā)篇——C++輸入與輸出

有關(guān)流對(duì)象cin、cout和流運(yùn)算符的定義等信息是存放在C++的輸入輸出流庫中的,所以如果是在程序中使用cin、cout和流運(yùn)算符,就一定要使用預(yù)處理命令把頭文件stream包含到本文件中:

#include<iostream>

雖然cin和cout不是C++本身提供的語句,不過在不致混亂的情況下,為了敘述方便,經(jīng)常把由cin和流提取運(yùn)算符“>>”實(shí)現(xiàn)輸入的語句叫作輸入語句或者是cin語句,把由cout和流插入運(yùn)算符“<<”實(shí)現(xiàn)輸出的語句叫作輸出語句或cout語句。根據(jù)C++語法,只要是能實(shí)現(xiàn)一種操作,且最后以分號(hào)結(jié)束的都是語句。

一、輸入流與輸出流的基本操作

cout語句的一般格式為:

cout<<表達(dá)式1<<表達(dá)式2<<……<<表達(dá)式n;

cin語句的一般格式為:

cin>>變量1>>變量2>>……>>變量n;

在定義流對(duì)象時(shí),系統(tǒng)會(huì)在內(nèi)存中開辟一段緩沖區(qū),用來暫存輸入輸出流的數(shù)據(jù),在執(zhí)行cout語句時(shí),先把插入的數(shù)據(jù)順序存放在輸出緩沖區(qū)中,直到輸出緩沖區(qū)滿或遇到cout語句中的endl(或'\n',ends,flush)為止,此時(shí)

將緩沖區(qū)中已有的數(shù)據(jù)一起輸出,并清空緩沖區(qū),輸出流中的數(shù)據(jù)在系統(tǒng)默認(rèn)的設(shè)備(一般為顯示器)輸出。

一個(gè)cout語句可以分寫成若干行,如下例:

iOS開發(fā)篇——C++輸入與輸出

大家一定要注意:不能用一個(gè)插入運(yùn)算符“<<”插入多個(gè)輸出項(xiàng),如:

cout<<a,b,c;//錯(cuò)誤,不能一次插入多項(xiàng)

cout<<a+b+c;//正確,這是一個(gè)表達(dá)式,作為一項(xiàng)

在用cout輸出時(shí),用戶不必通知計(jì)算機(jī)按何種類型輸出,系統(tǒng)會(huì)自動(dòng)判別輸出數(shù)據(jù)的類型,使輸出的數(shù)據(jù)按相應(yīng)的類型輸出,如已定義a為int型,b為float型,c為char型,那么:

iOS開發(fā)篇——C++輸入與輸出

上面的例子都可以從鍵盤輸入:1234↙

也可以分多行輸入數(shù)據(jù):
1↙
23↙
4↙
在用cin輸入時(shí),系統(tǒng)也會(huì)根據(jù)變量的類型從輸入流中提取相應(yīng)長度的字節(jié),例如:
charc1,c2;
inta;
floatb;
cin>>c1>>c2>>a>>b;
如果輸入
123456.78↙

大家要注意:34后面應(yīng)該有空格以便和56.78分隔開,也可以按下面格式輸入:

123456.78↙(在1和2之間有空格)

不能用cin語句把空格字符和回車換行符作為字符輸入給字符變量,它們將被跳過,如果想將空格字符或回車換行符(或任何其他鍵盤上的字符)輸入給字符變量,可以用3.4.3節(jié)介紹的getchar函數(shù)。

在組織輸入流數(shù)據(jù)時(shí),一定要細(xì)心分析cin語句中變量的類型,按照相應(yīng)的格式輸入,否則的話就會(huì)出錯(cuò)。

二、在輸入流與輸出流中使用控制符

從上面的介紹是使用cout和cin時(shí)的默認(rèn)格式,不過有時(shí)人們?cè)谳斎胼敵鰰r(shí)有一些特別的要求,如在輸出實(shí)數(shù)時(shí)規(guī)定字段寬度,只保留兩位小數(shù),數(shù)據(jù)向左或向右對(duì)齊等等,C++提供在輸入輸出流中使用的控制符(有的書中稱為操縱符)

大家需要注意的是:如果使用了控制符,那么在程序單位的開頭除了要加iostream頭文件外,還要另加iomanip頭文件。

例如:輸出雙精度數(shù):

iOS開發(fā)篇——C++輸入與輸出

例如:整數(shù)輸出:

iOS開發(fā)篇——C++輸入與輸出

如果在多個(gè)cout語句中使用相同的setw(n),同時(shí)使用setiosflags(ios∷right),可實(shí)現(xiàn)各行數(shù)據(jù)右對(duì)齊,

如果指定相同的精度,可實(shí)現(xiàn)上下小數(shù)點(diǎn)對(duì)齊。

例如:各行小數(shù)點(diǎn)對(duì)齊

iOS開發(fā)篇——C++輸入與輸出

從上面的例子中可以很了解本節(jié)課所整理的內(nèi)容,你可以自己實(shí)踐一下,看看輸出的結(jié)果,就會(huì)明白了。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI