在C++中的主函数中,如何定义一个数组,而这个数组的大小不确定,大小和数值由用户从键盘输入?

如题所述

先声明一个数组指针 然后根据需要动态分配存储空间
比如
int *a;
int n;
cin>>n; //输入数组长度
a=new int(n); //动态分配存储空间
//下面就可以对数组a[] 进行赋值等操作了
...
//最后别忘了用delete释放存储空间
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-06-20
准确的说,是先用户输入 任意的数 temp
然后编译器以temp为数组大小定义数组
然后再通过循环对数组的每个成员赋值
顺序一定要搞对,数组大小理论上是不允许动态的,如果动态了,都是错觉
第2个回答  推荐于2018-04-18
只能动态分配了啊,别给我说你没学过。
dobule arr[];
int length;
cin>>length;
arr = new double[length];
for(int i = 0; i < length; ++i)
cin>>arr[i];
for(int i = 0; i < length; ++i)
cout<<arr[i];
delete[] arr;本回答被提问者和网友采纳
第3个回答  2011-06-20
呵呵
int r; //行数

int c; //列数

cout<<"Please input the number of rows of the dynamic array: ";

cin>>r; //输入行数

cout<<"Please input the number of columns of the dynamic array: ";

cin>>c; //输入列数

//创建二维动态数组

int **p=new int*[r];

for(int i=0;i<r;i++)

{

p[i]=new int[r];

}

cout<<"The array named p["<<r<<"]["<<c<<"] is created."<<endl;
第4个回答  2011-06-20
//说明: vector是c++标准模板库的内容,可以include后直接用,自动动态分配大小,详细可以直接百度"c++ reference vector"

#include <vector>
int main() {
std::vector arr(100) ;
} ;

相关了解……

你可能感兴趣的内容

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