首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在C++中将字符串转换为C字符串

在C++中将字符串转换为C字符串
EN

Stack Overflow用户
提问于 2012-08-06 09:08:20
回答 4查看 124.7K关注 0票数 22

我有一个字符串要转换,string = "apple",我想把它放到一个包含{a, p, p, l, e, '\0'}的,这种风格的C字符串,char *c中。我应该使用哪种预定义的方法?

EN

Stack Overflow用户

发布于 2012-08-06 09:54:46

代码语言:javascript
运行
复制
vector<char> toVector( const std::string& s ) {
  string s = "apple";  
  vector<char> v(s.size()+1);
  memcpy( &v.front(), s.c_str(), s.size() + 1 );
  return v;
}
vector<char> v = toVector(std::string("apple"));

// what you were looking for (mutable)
char* c = v.data();

.c_str()适用于不可变的。向量将为您管理内存。

票数 9
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11821491

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档