C++ Iostreams用法詳解(二)標準輸入輸出

來源:互聯網
上載者:User

首先說我們最常用的兩個全域對象cin和cout,以下摘自MSDN:

You can then extract values from cin or wcin to read the standard input. The rules for doing so are outlined in the description of the class basic_istream Class. You can also insert values to cout or wcout to write the standard output. The rules for doing so are outlined in the description of the class basic_ostream Class.

可以看出,其中cin是istream的對象,可以從標準輸入中提取資料,而cout是 ostream的對象,可以向標準輸出中輸出資料。

什麼是標準輸入和標準輸出呢?可能對於我們這些90後 來說不是那麼容易理解的,畢竟這是字元介面的概念,而我們在開始接觸電腦的時候就已經是普遍的 windows圖形介面的作業系統了。但是windows作業系統還是為我們提供了一個類比dos這種字元介面的程式cmd ,讓我們大致對這個有一定的瞭解。而在Linux系統中我們更容易說清楚這個概念:在執行一個shell命令時, 會預設開啟三個標準檔案,即標準輸入檔案(stdin),通常對應終端的鍵盤;標準輸出檔案(stdout)和標 准錯誤輸出檔案(stderr),這兩個檔案都對應終端的螢幕。進程將從標準輸入檔案中得到輸入資料,將正常 輸出資料輸出到標準輸出檔案,而將錯誤資訊送到標準錯誤檔案中。

這樣說比較瞭解了吧,因為我們 在windows下面寫一個win32 控制台應用程式的時候,其實我們的這個程式就是類似於Linux中執行在shell中 的命令,所以這個程式在執行的時候當然可以帶有參數(就是main函數的參數int argc和char* argv[]了), 而且有標準輸入緩衝區和標準輸出緩衝區的概念了。只不過我們在windows下剛開始學習程式設計語言的時候,總 是會用一些圖形介面的IDE(例如VC++6.0就是我的啟蒙IDE),所以對這個程式的運行機制並不是很清楚,只 知道摁一下運行按鍵就自動完成了編譯、串連、開啟一個cmd並直接運行我們寫的這個程式了。

有了標 准輸入和輸出的概念(最好把他們像Linux裡面一樣看成是裝置檔案),接下來就要說一下這個cin和這個cout 到底是怎麼完成輸入輸出機制的了。首先來看一下下面這個例子:

#include <iostream>    #include <string>    using namespace std;int main()    {        int j = 0;        while(++j>0)    for(int i=0;i>0;i++);        string str;        cin >> str;        cout << str << endl;        system("pause");    }

相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。