21xrx.com
2025-03-30 06:59:22 Sunday
文章检索 我的文章 写文章
C++字符串转换为字符数组的方法
2023-06-29 13:05:22 深夜i     27     0
C++ 字符串 转换 字符数组 方法

在C++中,字符串和字符数组其实是不同的数据类型,但它们之间可以进行转换。有时候我们需要将字符串转换为字符数组,这时可以使用以下方法。

方法一:

使用strcpy函数

strcpy函数是C++语言中的字符串拷贝函数,其原型如下:

char * strcpy ( char * destination, const char * source );

其中 destination 表示目标数组,source 表示源字符串。通过调用该函数,可以将一个字符串拷贝到一个字符数组中,例如:

#include <iostream>
#include <cstring>
int main()
{
  std::string str = "Hello, World!";
  char arr[100];
  strcpy(arr, str.c_str());
  std::cout << arr << std::endl;
  return 0;
}

这段代码将字符串 "Hello, World!" 转换成字符数组并输出到控制台。

方法二:

使用循环遍历

从字符串的第一个字符开始,逐一将字符串中每个字符复制到字符数组中,例如:

#include <iostream>
#include <cstring>
int main()
{
  std::string str = "Goodbye, Universe!";
  char arr[100];
  int i;
  for (i = 0; i < str.size(); ++i) {
    arr[i] = str[i];
  }
  arr[i] = '\0';
  std::cout << arr << std::endl;
  return 0;
}

这段代码同样将字符串 "Goodbye, Universe!" 转换成字符数组并输出到控制台。

需要注意的是,字符数组最后一个元素必须是 '\0',否则将无法正常输出。

总结:

以上就是将C++字符串转换为字符数组的两种方法,可以根据实际情况选择其中一种。需要特别注意的是,在使用strcpy函数时一定要确保目标数组足够大,否则可能会引起内存泄漏或程序崩溃。

  
  

评论区

请求出错了