
char chSrc = 'c';char szTemp[128] = {0};
sprintf_s(szTemp, sizeof(szTemp), "%c", chSrc);
string strTemp = szTemp;
先转成char,然后直接就可以赋值给string了。
string 是类,不是数据类型,所以不能像int和char那样直接加减,给你个例子吧:
string s,temp;
char c = 'a';
temp = c;
sappend(temp);
cout << s << endl;
sappend(temp);
cout << s;
最后的结果就是:
a
aa
这是很笨的一个方法,但是也是我最常用的,因为我不能将char直接转换为string
stname="123"; 非法,常量字符串不能直接赋值给字符数组,因为stname 地址是确定的,不能再改了。 char name[10]="123";可以的,定义时,进行初始化字符数组。
代码没问题,只需要加上字符串结束符就可以了。
字符数组b没有初始化的。
int main(){
int i = 0;
char b[4];
for(i=0;i<3;i++)
scanf("%c", &b[i]);
b[3]='\0'; //给字符串加上结束符,不然没有办法输出的
printf("%s", b);
return 0;
}
以上就是关于在c++里char怎么给string赋值全部的内容,包括:在c++里char怎么给string赋值、C++中把char赋值给string、c语言结构体中的一个char数组怎么赋值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)