用c语言:编写一个类似库函数strlen()的函数,求字符串的长度
时间: 2024-02-24 16:56:00 浏览: 122
可以使用指针来实现一个类似库函数`strlen()`的函数,下面是一个示例代码:
```c
#include <stdio.h>
int my_strlen(char *str) {
int len = 0;
while (*str != '\0') {
len++;
str++;
}
return len;
}
int main() {
char str[] = "hello world!";
int len = my_strlen(str);
printf("The length of the string is %d\n", len);
return 0;
}
```
在这个示例代码中,`my_strlen()`函数接收一个指向字符串的指针作为参数,然后在循环中通过判断当前指针所指的字符是否为字符串结束符`\0`来计算字符串的长度。注意,这里使用了指针的自增运算符`++`来移动指针指向下一个字符。
在`main()`函数中,我们定义了一个字符串数组`str`,并将其传递给`my_strlen()`函数来计算字符串的长度。最后,我们使用`printf()`函数将字符串的长度输出到控制台。
相关问题
C语言,编写一个类似库函数strlen()的函数,求字符串的长度,在main()函数中输入一个字符串,调用该函数后输出结果。要求函数的形参采用指针变量。
可以使用指针变量逐个访问字符串中的字符,直到遇到字符串结束符'\0'为止,统计字符数即可。下面是一个示例代码:
```c
#include <stdio.h>
int my_strlen(char* str) {
int len = 0;
while (*str != '\0') {
len++;
str++;
}
return len;
}
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
int len = my_strlen(str);
printf("字符串长度为:%d\n", len);
return 0;
}
```
在该示例代码中,`my_strlen()`函数使用了指针变量`str`逐个访问字符串中的字符,并统计字符数,最后返回字符串长度。在`main()`函数中,首先输入一个字符串,然后调用`my_strlen()`函数,得到字符串长度,并输出结果。
本关任务:编写一个类似库函数strlen()的函数,求字符串的长度,在main()函数中输入一个字符串,调用该函数后输出结果。要求函数的形参采用指针变量。 测试说明 平台会对你编写的代码进行测试: 测试输入:abcde 预期输出:5
好的,这是一个比较基础的C语言编程任务,下面是代码实现:
```c
#include <stdio.h>
int my_strlen(char *s) {
int len = 0;
while (*s != '\0') {
len++;
s++;
}
return len;
}
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
int len = my_strlen(str);
printf("字符串的长度为:%d\n", len);
return 0;
}
```
在代码中,我们定义了一个 `my_strlen` 函数,该函数接收一个字符指针变量作为形参,然后通过循环遍历字符串,每次遍历计数器加一,直到遍历到字符串结束符号 `\0` 为止。最后返回计数器的值即为字符串的长度。
在 `main` 函数中,我们先定义一个字符数组 `str`,并通过 `scanf` 函数获取用户输入的字符串。然后调用 `my_strlen` 函数获取字符串的长度,并通过 `printf` 函数输出结果。
需要注意的是,由于字符数组和字符串是通过字符指针来表示的,因此我们在函数中传递字符数组时,需要将其转换为字符指针。
阅读全文