2015-07-21 63 views
-3

有時我看到,從這樣的文件中讀取的互聯網程序:什麼類型的條件可以接受if,while和for C++?

#include <iostream> 
#include <fstream> 
#include <string> 
using namespace std; 

int main() { 
string line; 
ifstream myfile ("example.txt"); 
if (myfile.is_open()) 
{ 
    while (getline (myfile,line)) 
    { 
    cout << line << '\n'; 
    } 
myfile.close(); 
} 
else cout << "Unable to open file"; 
return 0; 
} 

我想知道,如果while (getline (myfile,line))的意思是「只要文本文件有沒有被閱讀繼續閱讀它們行」如果「while」可以接受其他我不知道的情況。 另外我想知道是否有一種方法可以逐行讀取文本文件字符。

+6

這是非常基本的,應由教材和教程('if','while'),覆蓋,是的,你可以一次讀一個角色,但通常這不是最好的方式來做到這一點。 – crashmstr

+0

沒有什麼神奇的去那裏OP。並不是'while'語句理解'getline'在做什麼,只是'getline'返回一個值,可以通過'C'的條件語句將其解釋爲'true'或'false'。 – KABoissonneault

回答

0

在C++中,你可以讀取字符文件焦炭作爲給定的例子

char oneChar; 
fstream fin("file", fstream::in); 
while (fin >> noskipws >> oneChar) 
{ 
    cout << oneChar; 
    // or do desired operation with oneChar 
} 
-1

你是正確的,它會繼續閱讀,直到找到EOF或文件結束。雖然可以接受任何返回true或false的東西,所以任何返回bool(或偶數等)的函數都可以工作。

相關問題