21xrx.com
2025-03-28 19:13:19 Friday
文章检索 我的文章 写文章
C++中string类型转换为cstring类型的代码
2023-07-12 06:14:23 深夜i     41     0
C++ string cstring 类型转换 代码

C++中string类型和cstring类型的切换是程序开发中常见的操作,如果需要将string类型转换为cstring类型,可以采用以下代码实现。

#include <iostream>
#include <cstring>
#include <string>
using namespace std;
int main()
{
  string str = "Hello, World!"; // 定义一个string类型的变量
  const char* cstr = str.c_str(); // 将string类型变量转换为cstring类型
  cout << "转换后的字符串为:" << endl;
  cout << cstr << endl;
  return 0;
}

在上述代码中,通过调用string类型变量str的c_str()函数,将string类型转换为const char*类型的指针,c_str()返回的是一个指向string中第一个元素的指针,因此字符串的内容地址不变。

这种方法可以保证在原有字符串不变的情况下,得到一个指向该字符串内容的cstring类型指针。

在程序中,可以使用同样的方法将cstring类型转换为string类型,只需使用string的构造函数即可。

#include <iostream>
#include <cstring>
#include <string>
using namespace std;
int main()
{
  const char* cstr = "Hello, World!"; // 定义一个cstring类型
  string str(cstr); // 将cstring类型转换为string类型
  cout << "转换后的字符串为:" << endl;
  cout << str << endl;
  return 0;
}

在上述代码中,我们直接将cstring类型的指针cstr作为参数传递给string类型的构造函数,由于构造函数会根据指针所指向的字符数组的长度进行赋值,因此可以得到一个长度正确的字符串。

  
  
下一篇: C++ Primer第五版

评论区

请求出错了