作者KSJ (阿真)
看板C_and_CPP
标题[问题] 矩阵 到函式中再指定大小 是否可行?
时间Mon Aug 3 22:17:53 2009
类似以下的关念
//主程式
double *matrix; //宣告指标
functionA(matrix);
//函式A
int functionA(&matrix)
{
int M=5;
int N=3;
matrix = (double *)malloc(M * N * sizeof(double));
return 0;
}
函式A就是个配置矩阵大小的作用
不过在matrix还没被配置时 可否传址给函式A呢??
十诫中好像有提到这样不行任意使用未给值的指标(因为不知道指到哪)
传指标的址算不算使用啊??
很怕如果刚好OK後来有问题会很麻烦
想请教一下大家 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.63.180
1F:→ Bencrie:这样没有问题,未初始化是指matrix里存的地址不明 08/03 22:25
2F:→ Bencrie:然而matrix这个变数的地址是已知的。 08/03 22:26
3F:→ KSJ:感谢楼上~ 08/03 22:30
4F:推 QQ29:你这样写不会过吧 要写成 funA(double *&matrix) 08/04 01:34
5F:→ KSJ:楼上这样的语法是?? 08/04 02:06
6F:→ KSJ:我照本来的写法 会过哦 08/04 02:09
7F:→ KSJ:QQ29 我看错了 囧 你的写法是对的 原文手误 08/04 02:10
8F:→ KSJ:我是这样 double* &matrix 所以一时看不出来 囧 08/04 02:12
9F:推 su31o4gj83:或是用funcA(&matrix)与int funcA(double **matrix_l) 08/04 10:47