21xrx.com
2024-09-20 00:36:51 Friday
登录
文章检索 我的文章 写文章
如何将C++字符串转换为字符数组?
2023-07-06 03:06:11 深夜i     --     --
C++ 字符串 转换 字符数组

在C++语言中,字符串类别是一个非常普遍的类型。它允许程序员在同一变量中存储和使用多个字符。

然而,有时我们可能需要将C++字符串转换为字符数组。字符数组是C++语言中的另一个基本数据类型,它由一系列字符组成,以\0字符结尾,该字符表示字符串的结束。

在C++中,将字符串转换为字符数组有几种方法。

第一种方法是使用std::strcpy()函数来完成转换。该函数需要两个参数:目标字符数组和源字符串。下面是述实例代码:


#include <iostream>

#include <cstring>

using namespace std;

int main() {

  string str = "Hello, world!";

  char char_array[50];

  strcpy(char_array, str.c_str());

  cout << char_array << endl;

  return 0;

}

在此示例中,我们定义了一个字符串变量str,并在其中存储了一些文本。然后,我们定义了一个字符数组char_array,并使用strcpy()函数将字符串转换为字符数组。最后,我们使用cout语句输出字符数组。

第二种方法是使用字符串迭代器。使用迭代器来实现的代码将如下所示:


#include <iostream>

#include <cstring>

using namespace std;

int main() {

  string str = "Hello, world!";

  char char_array[50];

  int i = 0;

  for (auto it = str.begin(); it != str.end(); ++it) {

    char_array[i++] = *it;

  }

  char_array[i] = '\0';

  cout << char_array << endl;

  return 0;

}

在此示例中,我们使用迭代器遍历字符串中的每个字符,并将其一个一个添加到字符数组char_array中。最后,我们向字符数组中添加一个字符串结束符号\0,并打印输出字符数组内容。

无论使用哪种方法,将C++字符串转换为字符数组都是非常简单的任务,这样我们就可以自由地在程序中使用字符数组类型变量。

  
  

评论区

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