6-4 字符串长度 - C/C++ 指针及引用 分数 10 作者 海洋饼干叔叔 单位 重庆大学 strLength()函数用于统计指针s所指向的以0结尾的字符串的长度(字符个数),请实现该函数,使得下述程序可以正确运行。注意不能使用原生的strlen()函数。 函数接口定义: unsigned int strLength(const char* s); 裁判测试程序样例: #include <stdio.h> //在此处定义strLength()函数 int main() { cha
时间: 2024-03-20 08:38:43 浏览: 12
r str[] = "Hello, World!"; printf("The length of the string is: %u\n", strLength(str)); return 0; } 实现代码如下:
```c++
unsigned int strLength(const char* s) {
unsigned int len = 0;
while (*s != '\0') {
len++;
s++;
}
return len;
}
```
该函数的实现使用了一个 `while` 循环,每次判断指针 `s` 指向的字符是否为字符串结束符 `'\0'`,如果不是,则长度加1,指针 `s` 向后移动一位。最后返回字符串的长度。
相关问题
6-4 字符串长度 - C/C++ 指针及引用 分数 10 作者 海洋饼干叔叔 单位 重庆大学 strLength()函数用于统计指针s所指向的以0结尾的字符串的长度(字符个数),请实现该函数,使得下述程序可以正确运行。注意不能使用原生的strlen()函数。
可以使用指针遍历字符串,当指针指向的字符为'\0'时,字符串就结束了,此时指针所指向的位置减去字符串开头的位置就是字符串的长度。
代码实现如下:
```c++
#include <iostream>
using namespace std;
int strLength(char* s){
int len = 0;
while(*s != '\0'){
len++;
s++;
}
return len;
}
int main(){
char str[] = "hello world";
int len = strLength(str);
cout << "The length of string is: " << len << endl;
return 0;
}
```
输出结果为:The length of string is: 11
字符串长度 - C/C++ 指针及引用
好的,下面是使用 C/C++ 指针和引用实现字符串长度的代码:
使用指针:
```c
#include <stdio.h>
int str_len(char* str){
int len = 0;
while(*str != '\0'){
len++;
str++;
}
return len;
}
int main(){
char str[100];
printf("请输入字符串:\n");
scanf("%s", str);
printf("字符串长度为:%d\n", str_len(str));
return 0;
}
```
在 `str_len` 函数中,使用指针遍历字符串中的每一个字符,直到遇到字符串的结束符 `\0`,此时字符串的长度即为遍历的次数。
使用引用:
```c++
#include <iostream>
#include <string>
using namespace std;
int str_len(string& str){
return str.length();
}
int main(){
string str;
cout << "请输入字符串:" << endl;
cin >> str;
cout << "字符串长度为:" << str_len(str) << endl;
return 0;
}
```
在 C++ 中,可以使用 `string` 类型来表示字符串。在 `str_len` 函数中,使用引用来传递字符串,然后调用 `length` 函数获取字符串的长度。