C 輸入 輸出

2021-09-07 21:38:11 字數 2481 閱讀 4771

輸入和輸出的iostream 庫。iostream 庫的基礎是兩種命名為 istream 和 ostream 的型別,分別表示輸入流和輸出流。

標準庫定義了 4 個 io 物件:

1、處理輸入時使用命名為 cin(讀作 see-in)的 istream 型別物件。這個物件也稱為標準輸入。

2、處理輸出時使用命名為 cout(讀作 see-out)的 ostream 型別物件,這個物件也稱為標準輸出。

3、處理錯誤時使用命名為cerr(讀作see-err)的ostream型別。cerr 物件又叫作標準錯誤,通常用來輸出警告和錯誤資訊給程式的使用者。 

4、clog (讀作see-log)物件用於產生程式執行的一般資訊

std是乙個類(輸入輸出標準),它包括了cin成員和cout成員,using name space std ;以後才能使用它的成員。 

std::cout 的寫法使用了作用域操作符(scope operator,:: 操作符)[skəʊp]n.(處理、研究事務的)範圍;眼界

為什麼要這樣寫?

可以避免和庫中定義的名字相同而引起的衝突

和是不一樣,前者沒有字尾,實際上,在你的編譯器include資料夾裡面可以看到,二者是兩個檔案,開啟檔案就會發現,裡面的**是不一樣的。 

字尾為.h的標頭檔案c++標準已經明確提出不支援了,早些的實現將標準庫功能定義在全域性空間裡,宣告在帶.h字尾的標頭檔案裡,c++標準為了和c區別開,也為了正確使用命名空間,規定標頭檔案不使用字尾.h。 

因此,當使用時,相當於在c中呼叫庫函式,使用的是全域性命名空間,也就是早期的c++實現;當使用的時候,該標頭檔案沒有定義全域性命名空間,必須使用namespace std;這樣才能正確使用cout。

c++標準程式庫中的所有識別符號都被定義於乙個名為std的namespace中。

由於namespace的概念,使用c++標準程式庫的任何識別符號時,可以有三種選擇:

1、直接指定識別符號。例如std::ostream而不是ostream。完整語句如下:

std::cout << std::hex << 3.4 << std::endl;

2、使用using關鍵字。

using std::cout;

using std::endl;

以上程式可以寫成

cout << std::hex << 3.4 << endl;

3、最方便的就是使用using namespace std;

例如:#include

#include

#include

using

namespace std;

這樣命名空間std內定義的所有識別符號都有效(**)。就好像它們被宣告為全域性變數一樣。那麼以上語句可以如下寫:

cout << hex << 3.4 << endl;

因為標準庫非常的龐大,所以程式設計師在選擇的類的名稱或函式名時就很有可能和標準庫中的某個名字相同。所以為了避免這種情況所造成的名字衝突,就把標準庫中的一切都被放在名字空間std中。但這又會帶來了乙個新問題。無數原有的c++**都依賴於使用了多年的偽標準庫中的功能,他們都是在全域性空間下的。  

所以就有了和等等這樣的標頭檔案,乙個是為了相容以前的c++**,乙個是為了支援新的標準。

命名空間std封裝的是標準程式庫的名稱,標準程式庫為了和以前的標頭檔案區別,一般不加".h"

//

//#include

"stdafx.h"//

預編譯頭

#include "

iostream"//

方法一using std::cout;//

方法二using

namespace std;//

方法三int _tmain(int argc, _tchar*ar**)

輸入

//

//#include

"stdafx.h"//

預編譯頭

#include "

iostream"//

方法一using std::cout;//

方法二using

namespace std;//

方法三int _tmain(int argc, _tchar*ar**)

**解釋:

c++中乙個表示式由乙個或幾個運算元和通常是乙個操作符組成。該語句的表示式使用輸出操作符(《操作符)std::cout<

對的std::endl 是具有輸出換行的功能,並重新整理與裝置相關聯的緩衝區。 

C 輸入輸出

一 標準輸入函式cin 不知道說它是個函式對還是不對,它是代表標準的輸入裝置 鍵盤。他是屬於流的,他的用法和流的用法是一樣的。也就是 cin 變數 小小的說明一下,輸入多個變數可以寫在一行,如 cin x y z 這樣寫不是不允許,而是不好看,如果是不同的變數型別,那就更是沒頭沒腦了。除了你,人家是...

C 輸入輸出

c語言不提供輸入輸出語句,輸入輸出操作有函式來實現。c的標準庫函式中提供了許多輸入輸出函式,如printf scanf 等,使用時需要新增相應的標頭檔案 scanf d num 逗號前為控制語句,後半部分為變數的位址。當中 d是輸入格式控制字串 scanf 函式在接受輸入資料是預設不採集空格,回車,...

C 輸入輸出

c 中的一些常用輸入輸出 include include include include using namespace std void win io 由控制台輸入 void file io 檔案進行輸入 in file.close void file io 2 in file.close in ...