我只需要计算“ f”文件中的字符数即可。当我在一个字符串中计算字符数时,我得到了它的真实数字,但是当我在.txt文件中按“ enter”并创建新行时,我丢失了2个字符。因此,我的程序告诉我有4个字符串,每个字符包含15个字符,我告诉我文件中只有9个字符。请帮我算一下这个不幸的字符...
这是C语言中的代码:
while (!feof(f)) {
bool space = 1; //remembering last char (was it space or not)
for (int i = 0; i < len; ++i) { //running till the end of string
if (a[i] == ' ') {space = 1;}
else if (a[i] != '\0' && a[i] != '\n') {
chars++;
if (space == 1) {
words++; //and counting the words
space = 0;
}
}
}
}
答案 0 :(得分:1)
我认为以下内容就足够了:
int c;
while ((c=fgetc(f))!=EOF) {
if (c == ' ' || c=='\n') {
words++;
}
else {
chars++;
}
}