我需要计算作为标准输入提供的 C 程序注释中的字符。这是我的功能,但由于某种原因,它算不上正确。你能帮我吗?
int characters(FILE *file)
{
int i=0;
char ch[500], *p;
while (fgets(ch, sizeof(ch),file)!=NULL)
{
p=ch;
while (*p)
{
if (*p=='/')
{
p++;
if (*p=='*')
{
p++;
while (*p!='*' && *(p++)!='/')
{
i++;
p++;
}
}
}
else
p++;
}
return i;
}