[問題] 一維陣列模擬二維
我寫了一個function:
void add(int N, float R[100][100], float M1[100][100], float M2[100][100])
{ int i,j;
for(i=0;i<N;i++)
{ for(j=0;j<N;j++)
R[i][j]=M1[i][j]+M2[i][j];
}
}
是用來做矩陣加法的
然後我想要把他用成指標 我試著用這樣
void add1(int N,float *R,float *M1, float *M2)
{ int i,j;
float *p;
for(i=0;i<N;i++)
{ for(j=0;j<N;j++)
*p=*(M1+i*N+j)+*(M2+i*N+j);
}
}
在main裡呼叫時也從
add(q,R,M1,M2);
改成
add1(q,&(R[100][100]),&(M1[100][100]),&(M2[100][100]));
可是在用switch選擇方陣大小及運算方法及輸入方法時都ok
一run到 add1 就會當掉
add是沒問題
請問一下我的add1該怎麼修改呢
因為我也是用b板上的概念第一次自己試著寫寫看
諸多不懂麻煩指教@@ 謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.102.131
→
11/25 22:16, , 1F
11/25 22:16, 1F
→
11/25 22:17, , 2F
11/25 22:17, 2F
→
11/25 22:17, , 3F
11/25 22:17, 3F
→
11/25 22:18, , 4F
11/25 22:18, 4F
→
11/25 22:18, , 5F
11/25 22:18, 5F
→
11/25 22:20, , 6F
11/25 22:20, 6F
→
11/25 22:21, , 7F
11/25 22:21, 7F
→
11/25 22:22, , 8F
11/25 22:22, 8F
→
11/25 22:27, , 9F
11/25 22:27, 9F
→
11/25 22:50, , 10F
11/25 22:50, 10F
→
11/25 22:53, , 11F
11/25 22:53, 11F
推
11/25 22:56, , 12F
11/25 22:56, 12F
→
11/25 22:58, , 13F
11/25 22:58, 13F
→
11/26 00:15, , 14F
11/26 00:15, 14F
→
11/26 00:15, , 15F
11/26 00:15, 15F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章