C字符串内容赋值给C++的string类对象

2024-12-22 09:00:23
推荐回答(5个)
回答1:

楼主显然没有理解指针的作用啊,首先我先指出,楼主你声明的是10个字符类型指针的变量,即声明了10个指向字符类型的指针而非一个可以容纳10个字符的数组,要知道单操作符的运算级别是最高的,所以你把指针的值赋给string类型的,显然这是错误的,楼主可以这么改:
1、char chr[10]="yes"; string = chr;
2、char *chr="yes"; string = chr;
或是用楼主的方法用assign函数给string类型的变量赋值。关键在于楼主没有理解指针数组和数组指针的概念

回答2:

http://wenku.baidu.com/view/62992653f01dc281e53af046.html

回答3:

char* chr = "hello,world.";

char chr[] = "hello,world."
然后,string str( chr );就行了,或者string str = chr也行。

回答4:

1

回答5:

我觉得用前面第一个比较好,既然是一个string类,那它就已经解决了存储的问题,否则要这个类干嘛?不如直接用数组好了,