21xrx.com
2024-11-08 20:22:51 Friday
登录
文章检索 我的文章 写文章
C++如何求取char*字符串的长度?
2023-07-07 13:10:05 深夜i     --     --
C++ 字符串 长度 char*

在C++中,char*字符串是一个指向字符数组的指针,因此求取字符串的长度比较简单。

方法一:使用库函数strlen

C++提供了一个strlen函数来求取字符串的长度。这个函数的原型如下:


size_t strlen(const char* str);

其中,str是要求取长度的字符串。该函数会返回字符串的长度。

示例代码:


#include <iostream>

#include <cstring>

using namespace std;

int main() {

 char* str = "hello world"; // 定义一个字符串

 size_t len = strlen(str); // 使用strlen函数求取长度

 cout << "字符串长度为:" << len << endl;

 return 0;

}

输出结果:


字符串长度为:11

方法二:自己编写函数

如果你不想使用库函数,也可以自己编写函数来求取字符串的长度。方法是遍历字符数组,计算出字符的数量。

示例代码:


#include <iostream>

using namespace std;

size_t my_strlen(const char* str) { // 自己编写的函数

 size_t len = 0; // 长度计数器

 while (*str) { // 遍历字符数组

  len++; // 每遍历一个字符,计数器加一

  str++; // 指针移动到下一个字符

 }

 return len;

}

int main() {

 char* str = "hello world"; // 定义一个字符串

 size_t len = my_strlen(str); // 使用自己编写的函数求取长度

 cout << "字符串长度为:" << len << endl;

 return 0;

}

输出结果:


字符串长度为:11

无论使用哪种方法求取长度,都要注意,字符串的末尾必须是一个空字符('\0'),否则求取到的长度可能会不准确。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复