嗨,我正在编写一个程序,该程序从文本文件中读取行,然后输出每行的大小以及每行中有多少空格。我在使用空格的第二部分遇到麻烦,当它找到一个空格时,它只会保留该数字并将其输出到下面的每一行。所以我想知道如何将计数器设置回0。这是我的代码:
if(myfile.is_open()) {
while(!myfile.eof()) {
i++;
getline(myfile,line);
strcpy(ch, line.c_str());
r=r+line.length();
for(int j=0; j<line.size(); j++) {
if(line[j]==' ') {
status = true;
n++;
} else {
n = 0;
}
}
std::cout << i << ". " << ch << " -- " << " (" << line.size() << ") " << " number of spaces: " << n << std::endl;
}
}
答案 0 :(得分:1)
好吧,只需更改您的for循环:
n = 0; // After each line
for(int j=0; j<line.size(); j++)
{
if (line[j] == ' ') n++;
}