在C语言中int mystrlen char*p求字符串长度
时间: 2024-12-11 19:36:21 浏览: 22
在C语言中,通常不会直接使用`int mystrlen(char *p)`这种函数名来计算字符串长度,因为标准库提供了一个名为`strlen()`的内置函数来完成这个任务。`strlen()`函数接受一个指向字符串起始地址的指针,然后返回该字符串(包括空字符'\0')的长度,不包括空字符本身。
如果你想自定义一个类似功能的函数,你可以编写类似于下面的代码:
```c
#include <stdio.h>
size_t my_strlen(const char *str) {
if (str == NULL) {
return 0; // 如果指针为空,则返回0
}
size_t len = 0;
while (*str != '\0') { // 当遇到空字符'\0'时停止计数
len++;
str++; // 指针向后移动一位
}
return len;
}
int main() {
const char* p = "Hello, C!";
size_t length = my_strlen(p);
printf("String length: %zu\n", length); // 输出:13
return 0;
}
```
在这个自定义函数`my_strlen`中,我们遍历字符串直到找到`\0`为止,并统计字符的数量。
相关问题
编写一个函数mystrlen(char *chr),计算字符串的长度,请编程实现
以下是一个C语言的实现:
```c
#include <stdio.h>
int mystrlen(char *chr) {
int len = ;
while (*chr != '\') {
len++;
chr++;
}
return len;
}
int main() {
char str[] = "Hello, world!";
int len = mystrlen(str);
printf("The length of the string is %d.\n", len);
return ;
}
```
函数`mystrlen`接收一个指向字符数组的指针`chr`,并通过循环遍历数组中的每个字符,计算出字符串的长度。在循环中,每次遍历到一个字符,就将长度加1,直到遍历到字符串的结尾(即`\`字符)。最后,函数返回计算出的长度。
在`main`函数中,我们定义了一个字符数组`str`,并将其作为参数传递给`mystrlen`函数。函数返回的长度值被存储在变量`len`中,并通过`printf`函数输出。
用C语言做,计算字符串数组长度。从键盘任意输入一个字符串,用数组的方式计算其实际字符个数并打印出来,即不使用字符串处理函数strlen()编程实现strlen的功能。函数接口:unsigned int MyStrlen(const charstr[])输入格式:字符串,输出格式:字符串长度
以下是用C语言实现的代码:
```c
#include <stdio.h>
unsigned int MyStrlen(const char str[])
{
unsigned int len = 0;
while (str[len] != '\0')
len++;
return len;
}
int main()
{
char str[100];
scanf("%s", str);
unsigned int len = MyStrlen(str);
printf("%u", len);
return 0;
}
```
输入样例:
```
Hello, World!
```
输出样例:
```
13
```
阅读全文