我想打开一个文件进行阅读,然后输出该.txt文件中的内容,对我的代码有任何建议吗?
string process_word(ifstream &word){
string line, empty_str = "";
while (!word.eof()){
getline(word, line);
empty_str += line;
}
return empty_str;
}
int main(){
string scrambled_msg = "", input, output, line, word, line1, cnt;
cout << "input file: ";
cin >> input;
ifstream inFile(input);
cout << process_word(inFile);
}
答案 0 :(得分:2)
而不是:
while (!word.eof()) {
getline(word, line);
empty_str += line;
}
做的:
while ( std::getline(word, line) ) {
empty_str += line;
}
并且为变量提供更合适的名称也是明智的。
答案 1 :(得分:0)
您的功能可以简化为:
#include <iterator>
std::string process_word(std::ifstream& word)
{
return std::string{std::istream_iterator<char>{word},
std::istream_iterator<char>{}};
}
int main()
{
string input;
std::cin >> input;
std::ifstream inFile(input);
std::cout << process_word(inFile);
}