C语言题目:写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度

兄弟们哪位知道,C语言题目:写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度?

#include<stdio.h>

int length(char *p[99])
{
int n=0;
while(*p!='\0')
{
n++;
p++;
}
return n;
}
int main(void)
{
char *str[99];
int len;
scanf("%s",str);
len=length(str);
printf("%d\n",len);
}

为什么不管输入什么 结果都是104
最新回答
尛丠莵

2024-05-03 00:19:37

#include<stdio.h>

int length(char *p)//传参这样
{
int n=0;
while(*p!='\0')
{
n++;
p++;
}
return n;
}
int main(void)
{
char str[99];//这里有问题 定义数组就可以了
int len;
scanf("%s",str);
len=length(str);
printf("%d\n",len);
}

有帮助的话 给分 给最佳
内谎言太羙。

2024-05-03 00:54:55

改两个地方就可以了:
#include<stdio.h>

int length(char *p)
{
int n=0;
while(*p!='\0')
{
n++;
p++;
}
return n;
}
int main(void)
{
char str[99]={0};
int len;
scanf("%s",str);
len=length(str);
printf("%d\n",len);
}

我在linux下编译没有问题,结果也是正确的