C++中string数组的问题

问一下string类不能像内置类型那样声明一个该类型的数组吗?
如:
string str[10];
str[0]="i love you";
cout << str[0] << endl;

调用这个函数后,显示的是字母 i ,还是按字符串类的下标显示的数据。
我就是想问一下,string类不能像这样定义吗?
只能像下面这样定义吗?
string *str = new string[10];
str[0]="i love you";
cout << str[0] << endl;
#include <iostream>
#include <string>
using namespace std;
int main()
{
string str[2]={"i love you","i miss you"};

cout << str[0] << endl;
cout << str[1] << endl;
return 0;
}
但是我像这样就可以。。
如果要是不初使化,赋值就不可以,这是为什么呢?

可以按照你的定义,因为string并不是c++的基本数据类型。它是标准库里声明的一个字符串类。 

string str[10]; //定义一个字符串数组str 

显示的是 i love you 

扩展资料:

编译 & 执行 C++ 程序方法:

1、打开vs2010,选择"visual c++开发设置",然后点击"启动Visual Studio"。

2、"Visual Studio"选择默认环境设置。

3、进入"Visual Studio"后点击新建项目。

4、在弹出窗口选择 Visual C++标签下的空项目,输入名称以及保存位置。

5、在左侧的"解决方案资源管理器"中,选择"源文件"右击,然后选择"添加"->"新建项"。

6、在弹出窗口中,选择"C++文件(.cpp)",输入文件名称,单击"添加"。

7、现在输入具体的代码,例如输入简单的Hello World程序。

8、依次单击"调试"->"开始执行(不调试)"或按Ctrl+F5开始运行。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-16
string并不是c++的基本数据类型。它是标准库里声明的一个字符串类。

所以楼主的答案是:可以。
string str[10]; //定义一个字符串数组str

显示的是 i love you

还可以这样定义字符串数组:
string name[5]={"zhangli","li","fun","wang",tan"};

可以赋值啊。
#include <iostream>
#include <string>
using namespace std;
int main()
{
string str[2];
str[0]="i miss you";
str[1]=str[0];

cout << str[0] << endl;
cout << str[1] << endl; //输出一样的结果
return 0;
}本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网