c++中数组a[n][n]

「已注销」 2010-04-14 11:31:08
如果要定义一个n维数组
n根据输入的数字具体确定
该如何输入
int n;
cin>>n;
double a[n][n];
有错误该怎么改正
...全文
234 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
WebIllusory 2010-04-14
  • 打赏
  • 举报
回复
要么在一开始就确定数组的元数,要么使用new 函数进行动态内存分配
woaitmac1314 2010-04-14
  • 打赏
  • 举报
回复
这是动态内存分配,要么在一开始就确定数组的元数,要么使用new 函数进行动态内存分配,我也是新手,大家一起努力!!
十八道胡同 2010-04-14
  • 打赏
  • 举报
回复
int *a=new int[100];

动态数组
lirg8405 2010-04-14
  • 打赏
  • 举报
回复
int n;
cin>>n;
double **a;
a = new double*[n];
for(int i=0; i<n; i++)
{
a[i] = new double;
}
dukong123 2010-04-14
  • 打赏
  • 举报
回复
动态数组
fox000002 2010-04-14
  • 打赏
  • 举报
回复
用动态数组

new 之
pengzhixi 2010-04-14
  • 打赏
  • 举报
回复
用动态内存分配。数组的大小必须是编译期可以确定的。
mngzilin 2010-04-14
  • 打赏
  • 举报
回复
int** s = new double*[n];
=========或=======
double *a=new double[n*n];
herman~~ 2010-04-14
  • 打赏
  • 举报
回复
建议用vecotr,应该可以满足你的需求,动态增长,只需要往里面push_back数据
赵4老师 2010-04-14
  • 打赏
  • 举报
回复
动态分配太麻烦,还是预先给一个最大值比较好。
虽然浪费了一些内存,但省了很多事。
两害相较去其轻嘛。
#define MAXN 100
……
double a[MAXN][MAXN];
int n;
cin>>n;
if (n<1 || MAXN<n) {cout<<"error 1<=n<="<<MAXN<<endl;exit(1);}
Julykey 2010-04-14
  • 打赏
  • 举报
回复
动态分配内存
int** s = new double*[n];
for(int i = 0; i < n; ++n)
s[i] = new double[n];
for(int i = 0; i < n; ++n)
delete[] s[i];
delete[] s;

64,640

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧