怎么把单字符string转char?

mageeee 2016-08-30 03:53:06
函数要求返回char,用erase把原来的string删除至单字符了,要怎么返回
...全文
2104 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Ouyang_Lianjun 2016-09-04
  • 打赏
  • 举报
回复
#include <iostream>
#include <string>
using namespace std;
char string_to_char(string str)
{
str.erase(0, 3);
char str_char;
str_char = str[0];
return str_char;
}
int main()
{
string str("This");
char str_char;
str_char = string_to_char(str);
cout << "返回后的char: " << str_char << endl;
system("pause");
return 0;
}

输出的结果为:
xskxzr 2016-08-30
  • 打赏
  • 举报
回复
s.back(); s.front(); s.at(0); s[0]; 都可以。 推荐优先使用前两种方式。
小灸舞 2016-08-30
  • 打赏
  • 举报
回复
return str[0]
paschen 版主 2016-08-30
  • 打赏
  • 举报
回复
return str[i]; str是string类型变量,i是字符串中第i个字符
赵4老师 2016-08-30
  • 打赏
  • 举报
回复
引用 3 楼 yshuise 的回复:
string a; a.c_str();
a.c_str()返回char *
yshuise 2016-08-30
  • 打赏
  • 举报
回复
string a; a.c_str();
赵4老师 2016-08-30
  • 打赏
  • 举报
回复
string str("c");
char c=str[0];
assert('c'==c);
pengzhixi 2016-08-30
  • 打赏
  • 举报
回复
直接用下标操作不行么?

65,170

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧