21xrx.com
2024-11-22 07:04:43 Friday
登录
文章检索 我的文章 写文章
C++中string类型转换为cstring类型的代码
2023-07-12 06:14:23 深夜i     --     --
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第五版

评论区

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