c++中字符串数组问题

来源:百度知道 编辑:UC知道 时间:2024/05/29 20:45:12
大概是想这样,输入一堆字符串,如ABC,DEF,GH等,想类似整型数组那样储存如下:
A[0]='ABC'
A[1]='DEF'
A[2]='GH'
怎么做?

楼上说得对

用二维数组
就是,数组的元素类型是字符串
这样:
char a[3][20];
int i;

for (i=0 ; i<3 ; i++)
scanf("%s",a[i]);

其实二维数组就是:
一个指针数组
即一个数组,每个元素是指针
然后,每个指针指着一个字符串数组。

问题本身有问题,'ABC'不是一个字符,也不是字符串,"ABC"才是字符串。

如果想要存多个字符串,可以用指针数组

#include<iostream>
#include<string>
using namespace std;
int main()
{string a[3];
int i;
for(i=0;i<3;i++)
cin>>a[i]>>" ";
cout<<endl;
return 0;
}

用二维字符数组即可。a[i][j]
这样a[i]就对应一个字符串。。。
楼上的几位就是这个方法。

也可以像楼上那样声明string类的数组。

字符是指如'a'这样的,字符串只"ABC"这样的。。。
2楼说的很清楚了
char a[3][20];
int (*p)[20]=a;