Hello Mat

 找回密码
 立即注册
查看: 2543|回复: 2

C++ char*,const char*,string的相互转换

[复制链接]

1294

主题

1520

帖子

110

金钱

管理员

Rank: 9Rank: 9Rank: 9

积分
22633
发表于 2022-3-13 21:58:19 | 显示全部楼层 |阅读模式
C++ char*,const char*,string的相互转换
  1. 1. string转const char*
  2. string s ="abc";
  3. const char* c_s = s.c_str();

  4. 2. const char*转string
  5. const char* c_s ="abc";
  6. string s(c_s);

  7. 3. string转char*
  8. string s ="abc";
  9. char* c;
  10. const int len = s.length();
  11. c =new char[len+1];
  12. strcpy(c,s.c_str());

  13. 4. char*转string
  14. char* c ="abc";
  15. string s(c);

  16. 5. const char*转char*
  17. const char* cpc ="abc";
  18. char* pc =new char[100];//足够长
  19. strcpy(pc,cpc);
复制代码

参考:
【1】https://www.cnblogs.com/wuyepeng/p/9729943.html



算法QQ  3283892722
群智能算法链接http://halcom.cn/forum.php?mod=forumdisplay&fid=73
回复

使用道具 举报

1294

主题

1520

帖子

110

金钱

管理员

Rank: 9Rank: 9Rank: 9

积分
22633
 楼主| 发表于 2022-8-7 18:46:46 | 显示全部楼层
  1. string path = path_buff;
  2.     path = path + "\\sky.jpg";

  3.     int charlength = strlen(path.c_str()) + 1;
  4.     char* strc = new char[charlength];
  5.     strcpy_s(strc, charlength, path.c_str());
  6.     return strc;
复制代码
算法QQ  3283892722
群智能算法链接http://halcom.cn/forum.php?mod=forumdisplay&fid=73
回复 支持 反对

使用道具 举报

1294

主题

1520

帖子

110

金钱

管理员

Rank: 9Rank: 9Rank: 9

积分
22633
 楼主| 发表于 2022-8-7 18:47:19 | 显示全部楼层
  1. string path = path_buff;
  2.     path = path + "\\sky.jpg";

  3.     int charlength = strlen(path.c_str()) + 1;
  4.     char* strc = new char[charlength];
  5.     strcpy(strc, path.c_str());
  6.     return strc;
复制代码
算法QQ  3283892722
群智能算法链接http://halcom.cn/forum.php?mod=forumdisplay&fid=73
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Python|Opencv|MATLAB|Halcom.cn ( 蜀ICP备16027072号 )

GMT+8, 2024-4-25 18:14 , Processed in 0.232456 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表