Re: [問題] 將一維陣列轉換至二維(指標)
※ 引述《PanJC ((#‵Д′)f〒﹌﹌﹌﹌﹌ꄩ》之銘言:
: 我有一個一維的變數 *mu , 內有 K * P 個元素, 希望利用動態配置將它
: 轉換成二維變數 mm 以方便函數做進一步的運算
: 程式碼:
: int dNormals(int P, int K, double *mu)
: // P dimention
: // K parameter sets
: // *mu PxK mu arry
: {
: int p,k;
: double **mm;
: mm=(double **)malloc(K*sizeof(double *));
: if(mm == NULL)
: {
: printf("out of memory at dNormals\n");
: return 0;
: }
: for(k=0;k<K;k++){
: mm[k]=(double *)malloc(P*sizeof(double));
mm[k]=mu+(k-1)*P;
: if(mm[k] == NULL)
: {
: printf("out of memory at dNormals\n");
: return 0;
: }
if沒必要用
: }
: //////////////////// 以下是我希望達到的 /////////////////////
: for(k=0;k<K;k++){
: for(p=0;p<P;p++){
: mm[k][p]=mu[k*P+p];
: }
: }
: //////////////////// 以上是我希望達到的 /////////////////////
上面是多的
: for(k=0;k<K;k++){
: free(mm[k]);
: }
上面的free拿掉
: free(mm);
: return 1;
: }
這樣改應該就能跑了吧
因為我沒有實際測過
--
C++ hello world標準寫法
http://nopaste.csie.org/fee97
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.134.226.149
※ 編輯: loveflames 來自: 140.134.226.149 (06/07 16:06)
推
06/07 16:09, , 1F
06/07 16:09, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):