编写一个函数,求一个字符串的长度。要求:在main函数中输入字符串,并输出其长度。形参用指针变量。
#include<stdio.h>
int main()
{
char s[100];
int len;
printf("请输入一个字符串:");
gets(s);
int length(char *p);
len=length(s);
printf("该字符串的长度为:%d",len);
return 0;
}
int length(char *p)
{
int i=0,n=0;
while(*(p+i)!='\0')
{
n++;
i++;
}
return(n);
}
遍历字符串,判断结束符
#include <stdio.h>
int strLen(char *s)
{
int i=0;
while(s[i] != '\0')
i++;
return i;
}
int main()
{
char s[1000],*p=s;
gets(s);
printf("%d",strLen(p));
}
这是一个简单的例子,如何使用指针变量来计算字符串长度。
#include <stdio.h>
#include <string.h>
// 定义函数,用指针计算字符串长度
int getStringLength(char *str)
{
// 定义指针变量,并初始化为字符串的开始地址
char *p = str;
// 循环遍历字符串,直到遇到空字符
while (*p != '\0')
{
p++;
}
// 返回指针变量p的地址与字符串开始地址的差值
// 即为字符串的长度
return p - str;
}
int main()
{
char str[100];
printf("请输入字符串: ");
scanf("%s", str);
int length = getStringLength(str);
printf("字符串的长度为: %d\n", length);
return 0;
}
在main函数中,我们输入一个字符串,然后调用getStringLength函数,并将字符串的地址作为参数传递给函数。
getStringLength函数中,我们定义一个指针变量p,并初始化为字符串的开始地址。然后我们循环遍历字符串,直到遇到空字符。最后,我们计算指针变量p的地址与字符串开始地址的差值,即为字符串的长度。