1. 程式人生 > >C++ Primer 第8章作業

C++ Primer 第8章作業

initial AR 返回 返回值 c++ auto 取數 操作 string

練習8.1 編寫函數,接受一個istream&參數,返回值類型也是istream&. 此函數須從給定流中讀取數據,直至遇到文件結束標識時停止。它將讀取的數據打印在標準輸出上。完成這些操作後,在返回流之前,對流進行復位,使其處於有效狀態。

istream &func(istream &is)
{
    int num;
    auto old_state = is.rdstate();
    while(is.eof() != true) {
        is >> num;
        cout << num << endl;
    }
    is.clear();
    return
is; } int main(void) { func(cin); return 0; }

這段代碼沒有什麽,很順利的就能運行出來

練習8.2 測試函數,調用參數為cin

練習8.3 什麽情況下,下面的while循環會結束

while(cin >> i) /* ... */

8.2.1節練習
練習8.4: 編寫函數,以讀模式打開一個文件,將其內容讀入到一個string的vector中,將每一行作為一個獨立的元素存於vector中,

ex8_4.cpp:22:22: error: variable ‘std::ifstream in’ has initializer but incomplete type
ifstream in(ifile);

段錯誤 (核心已轉儲)

C++ Primer 第8章作業