int fun (char*x) { char*y=x; while(*y++); return(y-x-1); }
时间: 2024-05-12 22:14:16 浏览: 21
这是一个 C 语言函数,它的功能是计算字符串的长度。具体来说,它的实现方式是利用指针,从字符串的开始位置依次移动指针,直到指针指向字符串的结尾位置,然后返回指针移动的步数,即字符串的长度。可以通过以下方式调用该函数:
```
char str[] = "hello world";
int len = fun(str);
printf("length of string is %d\n", len);
```
输出结果为:
```
length of string is 11
```
相关问题
int fun1(char*x){ char*y=x; while(*y++); return(y-x-1);} 的功能是_
这是一个函数,函数名为fun1,参数为指向 char 类型的指针 x,返回值为 int 类型。
该函数的功能是计算字符串 x 的长度,也就是字符串中字符的个数(不包括字符串末尾的空字符 '\0')。具体实现方式是定义一个指针 y,将其指向字符串 x 的起始位置,然后不断向后移动指针 y,直到指向字符串末尾的空字符 '\0'。最终返回 y 指针与 x 指针之间的距离,即字符串的长度。
编写时用int fun(char*p1)
好的,下面是使用`int fun(char*p1)`定义的函数的C语言代码:
```c
#include <stdio.h>
int fun(char *p1) {
int len = 0;
while (*p1 != '\0') {
len++;
p1++;
}
return len;
}
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
int len = fun(str);
printf("该字符串的长度为:%d\n", len);
return 0;
}
```
在上述代码中,我们同样将`fun`函数的参数类型改为字符指针。在`fun`函数中,我们使用指针来遍历字符串,直到遇到字符串的结尾`\0`。每经过一个字符,我们就将指针向后移动一位,并且计数器`len`加1。在`main`函数中,我们同样声明一个字符数组`str`,并通过`scanf`从控制台输入一个字符串。然后,我们调用`fun`函数计算该字符串的长度,并将其输出到控制台上。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)