C++求把一个字符转换成string方法.26
发布网友
发布时间:2023-10-25 05:43
我来回答
共5个回答
热心网友
时间:2024-12-14 14:49
#include"stdio.h"
#include<stdlib.h>
#include<string.h>
voidmain()
{
intn=123456789;
charstr[20];
itoa(n,str,10);
printf("%s\n",str);
}
扩展资料
int转string的方式
1、采用标准库中的to_string函数。
inti=12;
cout<<std::to_string(i)<<endl;
不需要包含任何头文件,应该是在utility中,但无需包含,直接使用,还定义任何其他内置类型转为string的重载函数,很方便。
2、采用sstream中定义的字符串流对象来实现。
ostringstreamos;//构造一个输出字符串流,流内容为空;
inti=12;
os<<i;//向输出字符串流中输出int整数i的内容;
cout<<os.str()<<endl;//利用字符串流的str函数获取流中的内容;
字符串流对象的str函数对于istringstream和ostringstream都适用,都可以获取流中的内容。
热心网友
时间:2024-12-14 14:50
单个字符无法直接转换为string。
不过间接的方式有以下两种:
1 先将字符写在字符数组中,再用字符数组赋值给string.
参考代码如下:
#include <iostream>
#include <string>
using namespace std;
int main()
{
char ch = 'X';
string s ;
char s1[2] = {ch, 0};//定义一个字符数组,即传统的字符串,使其值为单个字符加上字符串结束符\0。
s = s1;//将字符赋值给string对象。
cout << s << endl;
}
2 先将string对象初始化为带有一个有效字符的值,然后将有效字符替换为需要的字符值。
参考代码如下:
#include <iostream>
#include <string>
using namespace std;
int main()
{
char ch = 'X';
string s="a" ;//初始化一个单元。这里的"a"只是要分配一个有效的空间,具体值并不重要。"b", "C", " "均是同样的效果。
s[0] = ch;//将需要的字符替换进string对象。
cout << s << endl;
}
方法有很多种,以上是两种代码实现简单,操作高效的样例。
热心网友
时间:2024-12-14 14:50
字符串转换成string方法:
char ch [] = "ABCDEFG";
string str(ch);//也可string str = ch;
或者
char ch [] = "ABCDEFG";
string str;
str = ch;//在原有基础上添加可以用str += ch;
单个字符char没有直接转化方法,可以通过字符数组再转化,如下所示:
char c = 'a' ;
char tmp[1];
tmp[0] = c ;
string result(tmp,1); //要用第二个参数,因为这说明string长度是1, 不然会产生乱码追问string result(tmp,1);不懂什么意思啊。
追答看注释
热心网友
时间:2024-12-14 14:51
讲一个楼上没有说到的方法,使用append()函数
#include <iostream>
#include <string>
using namespace std;
int main()
{
char ch='x';
string str="";//空字符串
str.append(1,ch);//1表示向末尾添加字符的数量是1,即向末尾添加一个ch字符
cout<<str<<endl;
}
热心网友
时间:2024-12-14 14:52
#include<iostream>
#include<string>
using namespace std;
int main()
{
char ch = 'x';
string str(1, ch); // 使用构造函数string(n, 'c')将字符串初始化为n个'c'字符的副本。
cout << str << endl;
return 0;
}