gpt4 book ai didi

c - 为什么我的 C 行数不起作用?

转载 作者:太空狗 更新时间:2023-10-29 15:11:01 25 4
gpt4 key购买 nike

我正在尝试读取一个文本文件,但在此之前我想知道我要读取多少元素。所以我需要计算文本文件的行数。到目前为止,我有这个:

int getLinecount (char *file) 
{
int ch, count = 0;
FILE *fp = fopen(file, "r");
if(fp == NULL)
{
return -1;
}
while((ch = fgetc(fp)) != EOF)
{
if (ch == '\n');
{
count++;
}
}
fclose(fp);
return count;
}

这工作得很好。我没有对文本文件进行任何更改,但它仍然打印 130,000,尽管该文件只有 10,000 行。我在 main 中唯一写的是:

linecount = getLinecount("...");

我很好奇哪里出错了。另外,获取行数是否有更好的选择?

最佳答案

if 语句之后有一个尾随分号 ;。然后, block 总是被执行:

{
count++;
}

关于c - 为什么我的 C 行数不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13291505/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com