[問題] 四維動態陣列無法free掉
我一始先宣告一個U[DimN1][DimN2][DimN3][DimT1]的動態陣列
但我free不掉
我不知道哪裡出了問題
請大家幫我看看
#include <stdio.h> /*stdio.h printf的功能*/
#include <stdlib.h> /*system指令的程式庫*/
#include <math.h> /*數學指令的程式庫*/
#include <conio.h>
int main( void )
{
int DimN1=10,DimN2=10,DimN3=10,DimT1=10;/*隨不同問題改值*/
/*產生 U[DimN1][DimN2][DimN3][DimT1]*/
double ****U = (double****)malloc( DimN1+1*sizeof(int***) );
int i, j,k,k1;
for(i=0; i<DimN1+1; i++) {
U[i] = (double***)malloc( DimN2+1*sizeof(int**) );
for(j=0; j<DimN2+1; j++) {
U[i][j] = (double**)malloc(DimN3+1*sizeof(int*) );
for(k=0; k<DimN3+1; k++) {
U[i][j][k] = (double*)malloc(DimT1+1*sizeof(int) );
}
}
}
/* 用完記得free, 反向順序*/
for(i=0; i<DimN1; i++) {
for(j=0; j<DimN2; j++) {
for(k=0; k<DimN3; k++) {
free(U[i][j][k]);
}
free(U[i][j]);
}
free(U[i]);
}
free(U);
}
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.63.199
推
03/27 09:42, , 1F
03/27 09:42, 1F
推
03/27 09:43, , 2F
03/27 09:43, 2F
推
03/27 09:49, , 3F
03/27 09:49, 3F
→
03/27 09:53, , 4F
03/27 09:53, 4F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章