用C语言编写一个类似库函数strlen()的函数,求字符串的长度,在main()函数中输入一个字符串,调用该函数后输出结果。要求函数的形参采用指针变量。
时间: 2024-03-23 18:36:13 浏览: 90
好的,我们可以手动编写一个 `my_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()` 函数中,我们使用了指针变量 `str` 来遍历字符串中的每一个字符,并通过累加计算出字符串的长度。最终得到的 `len` 即为字符串的长度。在 `main()` 函数中,我们输入一个字符串,并调用 `my_strlen()` 函数来求出其长度,并输出结果。
相关问题
使用C语言编写一个类似库函数strlen()的函数,求字符串的长度,在main()函数中输入一个字符串,调用该函数后输出结果。要求函数的形参采用指针变量。
好的,这是一个简单的C语言程序,实现了类似于库函数strlen()的字符串长度计算功能:
```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()的函数,它的形参是一个指向字符数组的指针变量。在该函数中,我们使用了一个while循环来遍历整个字符串,每遍历一个字符就将长度加1,直到遍历完整个字符串。最后返回字符串的长度。
在main()函数中,我们首先定义了一个字符数组str,然后使用scanf()函数从标准输入中读取这个字符串。接着调用my_strlen()函数计算字符串的长度,最后输出结果。
注意,在输入字符串时,我们使用了%s格式控制符,这个控制符表示读取一个字符串,遇到空格或者换行符就停止读取。
c语言编写一个类似库函数strlen()的函数,求字符串的长度,在main()函数中输入一个字符串,调用该函数后输出结果。要求函数的形参采用指针变量。
可以按照以下方式编写一个类似库函数`strlen()`的函数,实现求字符串长度的功能。
```c
#include <stdio.h>
int my_strlen(char *s) {
int len = 0;
while (*s != '\0') {
len++;
s++;
}
return len;
}
int main() {
char s[100];
printf("请输入一个字符串:");
scanf("%s", s);
int len = my_strlen(s);
printf("该字符串的长度为:%d\n", len);
return 0;
}
```
在这个程序中,我们先定义了一个函数`my_strlen()`,该函数的形参采用指针变量,用于指向需要求长度的字符串。在函数中,我们通过循环遍历字符串中的每一个字符,并且每遍历一个字符,就将长度加1。最后,我们返回计算出的长度。
在`main()`函数中,我们首先输入一个字符串,然后调用`my_strlen()`函数求出其长度,并输出结果。需要注意的是,在输入字符串时,我们使用了`scanf()`函数,这样可以避免输入的字符串中包含空格等特殊字符的问题。
阅读全文