c语言求字符串长度用指针实现
时间: 2023-11-08 16:04:17 浏览: 96
可以通过指针遍历字符串,直到遇到字符串结束符 '\0',来求字符串的长度。
下面是一个示例代码:
```
#include <stdio.h>
int strlen(char *str) {
int len = 0;
while (*str != '\0') {
len++;
str++;
}
return len;
}
int main() {
char str[] = "hello world";
int len = strlen(str);
printf("The length of \"%s\" is %d\n", str, len);
return 0;
}
```
输出结果为:
```
The length of "hello world" is 11
```
相关问题
c语言输入字符串求字符串长度
C语言中有多种方法可以求字符串的长度。一种常见的方法是使用内置函数`strlen`来求字符串的长度,该函数在C语言中是自带的。我们只需要包含`<string.h>`头文件,并调用`strlen`函数即可。另外,我们也可以自己编写函数来求字符串的长度。有多种实现方式,比如使用临时变量、指针减指针和递归等。具体代码实现如下:
方法一:调用内置函数strlen求字符串长度
```c
#include <stdio.h>
#include <string.h>
int main() {
char s[] = "abc";
int len = strlen(s);
printf("%d", len);
return 0;
}
```
方法二:创建临时变量计算字符串长度
```c
#include <stdio.h>
int my_strlen(char* str) {
if(*str != '\0') {
return 1 + my_strlen(str + 1);
} else {
return 0;
}
}
int main() {
char s[] = "abc";
int len = my_strlen(s);
printf("%d", len);
return 0;
}
```
方法三:指针减指针求字符串长度
```c
#include <stdio.h>
int my_strlen(char* str) {
int count = 0;
while(*str != '\0') {
count++;
str++;
}
return count;
}
int main() {
char s[] = "abc";
int len = my_strlen(s);
printf("%d", len);
return 0;
}
```
方法四:不创建临时变量计算字符串长度(递归)
```c
#include <stdio.h>
int my_strlen(char* str) {
if(*str == '\0') {
return 0;
} else {
return 1 + my_strlen(str + 1);
}
}
int main() {
char s[] = "abc";
int len = my_strlen(s);
printf("%d", len);
return 0;
}
```
用C语言指针 求字符串的长度
可以使用 C 语言中的 strlen() 函数来求字符串的长度,例如:
```
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "Hello, world!";
int len = strlen(str);
printf("The length of the string is: %d\n", len);
return 0;
}
```
该程序使用 strlen() 函数来计算字符串 "Hello, world!" 的长度,并输出结果 "The length of the string is: 13"。注意,在使用 strlen() 函数时,需要首先包含头文件 string.h。