编写函数求字符串长度,函数形式参数为字符串,返回值为整型,不能使用任何库函数
时间: 2025-01-28 09:23:53 浏览: 39
当然可以。以下是一个不依赖任何库函数来计算字符串长度的C语言函数:
```c
int string_length(const char *str) {
int length = 0;
// 遍历字符串直到遇到空字符'\0'
while (str[length] != '\0') {
length++;
}
return length;
}
```
这个函数的工作原理如下:
1. 我们定义了一个名为`string_length`的函数,它接受一个指向字符的常量指针(`const char *str`)作为参数,并返回一个整型值。
2. 在函数内部,我们声明了一个整型变量`length`并初始化为0。这个变量将用于存储字符串的长度。
3. 我们使用一个`while`循环来遍历字符串。循环的条件是`str[length] != '\0'`,这意味着只要当前字符不是字符串结束符(空字符`'\0'`),循环就会继续。
4. 在每次循环迭代中,我们将`length`加1。
5. 当循环结束时,`length`的值就是我们计算的字符串长度。
6. 最后,我们返回`length`的值。
这个函数的工作方式是从字符串的第一个字符开始,逐个字符地检查,直到遇到字符串结束符`'\0'`。它不会使用任何库函数,如`strlen()`,完全依靠基本的C语言语法和操作来实现功能。
使用这个函数的示例:
```c
#include <stdio.h>
int string_length(const char *str);
int main() {
const char *testString = "Hello, World!";
int length = string_length(testString);
printf("The length of the string is: %d\n", length);
return 0;
}
int string_length(const char *str) {
int length = 0;
while (str[length] != '\0') {
length++;
}
return length;
}
```
这个程序将输出:
```
The length of the string is: 13
```
因为"Hello, World!"包含13个字符(注意,标点符号和空格也算作字符)。
阅读全文
相关推荐



















