编写一个类似库函数strlen()的函数,求字符串的长度,在main()函数中输入一个字符串,调用该函数后输出结果。要求函数的形参采用指针变量
时间: 2024-03-01 12:51:35 浏览: 78
FIND_LEN.rar_C 字符串
可以使用指针变量来实现类似库函数 `strlen()` 的函数,求字符串的长度。下面是一个示例代码:
```c
#include <stdio.h>
int my_strlen(char *str) {
int len = 0;
while (*str++) {
len++;
}
return len;
}
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
int len = my_strlen(str);
printf("字符串的长度为:%d\n", len);
return 0;
}
```
在函数 `my_strlen()` 中,使用一个 `while` 循环遍历字符串,每次判断指针变量 `str` 所指向的字符是否为 `'\0'`(字符串的结束符),如果不是则将指针变量 `str` 向后移动一位,并将计数器 `len` 加1。当遍历到字符串的结束符时,循环退出,函数返回计数器 `len` 的值,即为字符串的长度。
在 `main()` 函数中,首先定义一个字符数组 `str`,并使用 `scanf()` 函数从标准输入中读取一个字符串。然后调用函数 `my_strlen()`,并将字符数组 `str` 的首地址作为参数传递给函数。最后输出函数返回的字符串长度即可。
需要注意的是,字符串的长度不包括字符串的结束符 `'\0'`。
阅读全文