内存分配在C到Java中

时间:2014-10-05 07:13:56

标签: java c

我有一个C程序现在我想将它移植到Java程序中。我得到了大部分内容,但我有一个像

这样的代码
    tsum=(float *) malloc(cr_nos*sizeof(float));
    rsum=(float *) malloc(cr_nos*sizeof(float));
    ex_sum=(float *) malloc(cr_nos*sizeof(float));
    bsum=(float *) malloc(cr_nos*sizeof(float));

现在如何在Java程序中分配此大小? cr_nos是一个大小为(1-10)的整数。

2 个答案:

答案 0 :(得分:3)

上面代码的Java等价物是:

float[] tSum = new float[crCount];
float[] rSum = new float[crCount];
float[] exSum = new float[crCount];
float[] bSum = new float[crCount];

...虽然在Java中,“t”,“r”,“ex”,“b”和“cr”通常是未缩写的。

答案 1 :(得分:2)

Java和C在内存管理方面有很大不同。您不需要专门分配或释放内存 - 只需创建所需的对象,让Java为您完成工作。我怀疑C中会有很多样板,当你完成后它会消失。