【发布时间】:2020-02-05 12:03:24
【问题描述】:
我正在编写一个函数来查找字符串长度而不使用标准标题。我从头到尾完成了代码,但是当我最后返回计数时,它没有返回(第 1 点)正确答案。
例如:
Enter name:
ISRO
Name is ISRO
Length is 4
&
Process returned 17
代码:
int stringlength (char[]);
void main()
{
char str[20];
int len;
printf("Enter name:\n");
gets(str);
printf("Your name is %s\n",str);
len = stringlength(str);
printf("Name length is %d\n", len);
}
int stringlength (char x[])
{
int i=0,count=0;
while(x[i] != '\0')
{
count++;
i++;
}
return count; (Point 1)
}
【问题讨论】:
-
“(Point 1)”是什么意思?此外,还请澄清您的输出(您给出的输出是预期的输出?)。
-
i和count在stringlength函数中具有相同的值。你可以放弃其中之一。此外,输出看起来正确 -
很可能不是
void main(),而是int main() -
你使用一些 IDE 吗?或者你用什么编译器?尝试使其成为
int main()并在主要功能的末尾return 0; -
嗨,您的示例输出实际上与您的代码不匹配。例如,输出显示“Name is”,但代码打印“Your name is”。我不是要小气。包含您遇到困难的代码的确切版本非常重要。
标签: c arrays string string-length