有关c++编程中矩阵大小的问题,

比如我现在想输入任意大小的矩阵,然后进行一些奇异值分解运算,但是我怎么开辟空间呢,矩阵定义的大小不是应该固定的吗,但是我要实现的是可以输入3*3,也可以是4*3,然后进行一些运算,那该怎么定义,怎么赋值呢
换句话说,我想写这样一个函数,eig(r,t),r是矩阵,t是矩阵大小,但是t是不确定的,那我该怎么写呢?

eig(int **r,int t)
或者eig(int *r,int t)
具体有点忘了 你可以自己试一试 ,在函数里可以正常用下标访问。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-09-09
要么分配个“最大”的矩阵, 要么用vector之类的
第2个回答  2010-09-09
可以动态开辟矩阵

使用动态数组,或者vector

动态数组

int**a=new int *[len1+1];
for(int i=0;i<=len1;i++)
a[i]=new int [len2+1];

用后用delet释放空间本回答被提问者采纳
相似回答