C++中常见的字符串类型转换
【摘要】 目录
前言
1. CString与std::string的相互转化
2. string、char *、char[]的相互转换
前言
C++编程中经常会遇到各种字符、字符串之间的转换问题,这里简单的做个整理,具体内容直接参考实例代码。
1. CString与std::string的相互转化
报错:
const std::string' (aka 'co...
目录
前言
C++编程中经常会遇到各种字符、字符串之间的转换问题,这里简单的做个整理,具体内容直接参考实例代码。
1. CString与std::string的相互转化
报错:
const std::string' (aka 'const basic_string<char, char_traits<char>, allocator<char> >') to 'ATL::CStringT<wchar_t, ATL::StrTraitATL<wchar_t, ATL::ChTraitsCRT<wchar_t> > >::PCXSTR' (aka 'const wchar_t *') for 1st argument
解决方法,请参考如下代码:
// CString转成std::string:
CString aa("Hello");
std::string bb((LPCTSTR)a);
// std::string转成CString:
std::string cc("Boom");
CString dd(cc.c_str());
2. string、char *、char[]的相互转换
代码参考:
// string转char*
string aa="world";
const char *p = aa.c_str();
// char*转string
string bb;
char *p = "hello";
bb = p; //直接赋值
// string转char[]
string cc = "abcde";
char p[10];
int index;
for(int i = 0; i < cc.length(); i++) {
p[i] = cc[i];
index = i;
}
p[index] = '\0';
// char[]转string
const char* dd = "xyz";
string p = dd; //直接赋值
const char[] ee = "xyz";
string pp = ee; //直接赋值
文章来源: liuzhen.blog.csdn.net,作者:Data-Mining,版权归原作者所有,如需转载,请联系作者。
原文链接:liuzhen.blog.csdn.net/article/details/107456699
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)