我很喜欢C ++编程,需要你的帮助
需要将每个句子分配给变量句[i]
并非所有字母都已分配。为什么呢?
代码错误:
int k = 0;
char t[256];
string sentence[1024], s;
while(!in_file.eof())
{
in_file.getline(str, num);
for(int i = 0; i < strlen(str); i++)
{
if(str[i] != '.')
{
sentence[k] += str[i];
i++;
}
else
{
sentence[k] += str[i];
k++;
i++;
}
};
}
for(int i = 0; i < k; i++)
cout << "Sentence" << i+1 << ": " << sentence[i] << endl;
结果:
My text from file:
У лукоморья дуб зеленый,
Золотая цепь на дубе том.
И днем, и ночью кот ученый
Все ходит по цепи кругом.
Sentence 1: Улкмрядбзлнй Злтяцп адб о. // why?
Sentence 2: Иде,инчюктуеы Вехдтп еикуо. // why?
答案 0 :(得分:0)
我会这样做。
while( k < 1024 && in_file.getline( sentence[k],'.' ) )
{
sentence[k] += '.';
k++;
}
for(int i = 0; i < k; i++)
cout << "Sentence" << i+1 << ": " << sentence[i] << endl;
这里运行正常http://ideone.com/lMnnW2(使用std :: cin而不是in_file)