商务出差和女老板同房2在线观看_国产91变态调教视频_狠狠干亚洲最新电影av_美女自慰在线123区

您當前位置: 唯學網(wǎng) » 計算機等級考試培訓 » 二級專題

計算機等級考試二級C++流考點解析

來源:唯學網(wǎng)•教育培訓(m.ormdc.com)  【唯學網(wǎng) • 中國教育電子商務平臺】 加入收藏

2014年下半年計算機等級考試時間是9月份,考生在準備的過程中,要明確其準確的時間和地點,在這個環(huán)節(jié),考生要做好充足的準備,對是否成功起著至關重要的作用,所以考生要在這個階段多做練習,多思考,多看,多總結。

10.1 C++流的概念

1C+ +流的體系結構

要利用C+ +流,必須在程序中包含有關的頭文件,以便獲得相關流類的聲明。為了使用新標準的流,相關頭文件的文件名中不得有擴展名。與C+ +流有關的頭文件有:

iostream:要使用cin、cout的預定義流對象進行針對標準設備的I/O操作,須包含此文件。

fstream:要使用文件流對象進行針對磁盤文件的I/O,操作須包含此文件。

strstream:要使用字符串流對象進行針對內存字符串空間的I/O操作,須包含此文件。

iomanip:要使用setw、fixed等大多數(shù)操作符,須包含此文件。

注意,為了使用新標準的C+ +流,還必須在程序文件的開始部分插入下面這個名字空間聲明:

using namespace std;

2 預定義流對象

C+ +流有4 個預定義的流對象,它們的名稱及與之聯(lián)系的I/O設備如下:

cin 標準輸入

cout 標準輸出

cerr 標準出錯信息輸出

clog 帶緩沖的標準出錯信息輸出

3提取運算符和插入運算符

輸入流類istream重載了運算符,用于數(shù)據(jù)輸入,其原形具有

istream& operator( istream&,類型修飾&); 的形式。重載的的功能是從輸入流中提取數(shù)據(jù)賦值給一個變量,因此稱之為提取運算符(extractor)。當系統(tǒng)執(zhí)行cinx操作時,將根據(jù)實參x的類型生成相應的提取運算符重載函數(shù)的實例并調用該函數(shù),把x 引用傳送給對應的形參,接著從鍵盤的輸入 緩沖區(qū)中讀入一個值并賦給x(因形參是x的引用)后,返回istream 流,以便繼續(xù)使用提取運算符為下一個變量輸入數(shù)據(jù)。

輸出流類ostream重載了運算符,用于數(shù)據(jù)輸出,其原形具有

ostream& operator(ostream&,類型修飾);

的形式。重載的的功能是把表達式的值插入到輸出流中,因此稱之為插入運算符(inserter)。當系統(tǒng)執(zhí)行coutx操作時,首先根據(jù)x值的類型調用相應的插入運算符重載函數(shù),把x 的值傳送給對應的形參,接著執(zhí)行函數(shù)體,把x 的值(亦即形參的值)輸出到顯示器屏幕上,在當前屏幕光標位置起顯示出來,然后返回ostream流,以便繼續(xù)使用插入運算符輸出下一個表達式的值。

上面格式中的“類型修飾符”是指char、int、double、char*、bool等等C+ +中固有類型的修飾符。也就是說,只要輸入輸出的數(shù)據(jù)屬于這些C+ +固有類型中的一種,就可以直接使用或完成輸入輸出任務。在完成輸入輸出任務后,和把第一參數(shù)(即流對象的引用)返回,因此這兩個運算符可以連續(xù)使用,如cinabc;等。

4有格式輸入輸出和無格式輸入輸出

利用C+ +流既可進行有格式輸入輸出,也可進行無格式輸入輸出。

計算機所處理的數(shù)據(jù)都有內部存儲格式和外部表現(xiàn)形式的區(qū)分,因此在輸入輸出過程中必須進行適當?shù)霓D換,有格式輸入輸出就是完成這一任務的。有格式輸入輸出針對的是鍵盤、顯示器、打印機等字符設備以及磁盤中的文本文件。對于有格式輸入輸出,無論輸入輸出的數(shù)據(jù)是什么數(shù)據(jù)類型,體現(xiàn)在外部設備上都是字符序列。

對于無格式輸入輸出,數(shù)據(jù)的內部存儲存格式與外部存儲格式完全相同,因此無格式輸入輸出只能針對磁盤文件(或磁帶、光盤上的文件),而且這樣的文件通常不能用一般的文本編輯器查看。進行無格式輸入輸出需調用流對象的專門的成員函數(shù)實現(xiàn)。

5操作符

C+ +流提供了提取運算符和插入運算符,使得輸入輸出的表達簡潔、形象、直觀,這最能體現(xiàn)C+ +流的風格。C+ +流還提供了很多輸入、輸出或控制輸入輸出的成員函數(shù),須通過.或-加以調用,不能與運算符或配合使用,因而與C+ +流的整體風格很不協(xié)調。為此,C+ +提供了一系列可與運算符或配合使用的特殊函數(shù),稱為操作符(manipulator)。每個操作符都與一個具體的函數(shù)相聯(lián)系,使得或可間接地通過它們調用與之聯(lián)系的函數(shù),完成相應的輸入 、輸出功能或輸入輸出控制功能。前面經(jīng)常用到的endl、setw等就是操作符。有了操作符,C+ +流操作在風格上就更加統(tǒng)一,輸入輸出操作也顯得更加流暢。

10.2 輸入輸出的格式控制

1默認的輸入輸出格式

在沒有特地進行格式控制的情況下,輸入輸出采用默認格式。

(1)默認的輸入格式

C+ +流所識別的輸入數(shù)據(jù)的類型及其默認的輸入格式包括:

short、int、long(signed、unsigned):與整型常量同

float、double、long double:與浮點數(shù)常量同

char(signed、unsigned):第一個非空白字符

char *(signed、unsigned):從第一個非空白字符開始到下一個空白字符結束

void*:無前綴的16進制數(shù)

bool:把true或1識別為true,其他的均識別為false(vc6.0中把0識別為false,其他的值均識別為true)

(2)默認的輸出格式

C+ +流所識別的輸出數(shù)據(jù)的類型及其默認的輸出格式包括:

char(signed、unsigned): 單個字符(無引號)

short、int、long(signed、unsigned):一般整數(shù)形式,負數(shù)前有-號

char *(signed、unsigned): 字符序列(無引號)

float、double、long double:浮點格式或指數(shù)格式(科學表示法),取決于哪個更短

void *: 無前綴的16進制數(shù)

bool: 1或0

2.格式標志與格式控制

在作為流庫根類的ios_base中,有一個作為數(shù)據(jù)成員的格式控制變量,專門用來記錄格式標志;通過設置標志,可以有意識地對有格式輸入輸出的效果加以控制。各種格式標志被定義為一組符號常量。

這些作為格式標志的常量與整數(shù)的對應關系是精心安排的,每一個標志對應一個二進制位,為1時表示對應標志已設置,為0時表示對應標志未設置。這些作為標志的二進制位保存在格式控制變量的低端的若干位中,每一個流對象都有這樣一個作為數(shù)據(jù)成員的格式控制變量。在外部使用這些格式標志時,必須在標志前加上ios_base::修飾。

格式標志中的有些關系密切的相鄰標志被規(guī)定為域,一共有三個:由left、right和 internal組成的域稱為 adjustfield(對齊方式域);由dec、oct和hex組成的域稱為basefield(數(shù)制方式域);由scientific和fixed組成的域稱為floatfield(浮點方式域)。adjustfield、basefield和floatfield也是在ios_base中定義的,因此在外部使用時也必須加上域修飾前綴ios_base::(如ios_base::adjustfield)。

如若獲知更多關于計算機等級考試培訓的資訊,請隨時關注唯學網(wǎng)計算機培訓欄目,小編會為您在第一時間做出相關報道。

0% (0)
0% (10)
已有條評論