所以我在文本文件中有多个单词,我想把它们全部放在一个char中。问题是它也没有保持单词之间的空间。 我的代码:
ifstream f("file.txt");
char a[100];
int i=0;
while(f){
f>>a[i];
i++;
}
答案 0 :(得分:2)
'>>' 流运营商不会检测文件中的空间。你有cin.get(charVariable);
功能吗?在您的情况下,它将是f.in(a[i]);
这将解决您的问题;
ifstream f("File.txt");
char a[100];
int i = 0;
while (f){
f.get(a[i]); //use it instead of f>>a[i];
i++;
}
答案 1 :(得分:0)
这是因为您要逐字阅读文件。您应该使用 std :: string contents 函数来读取char(包含空格字符)的整个文本字符。
阅读 Nemanja Boric 答案