加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – malloc前面的(双**)是什么意思?

发布时间:2020-12-16 10:46:09 所属栏目:百科 来源:网络整理
导读:例如在这段代码中: double **Data,*DataT;Data = (double **)malloc(3*sizeof(double *)+3*12*sizeof(double)); 我刚刚读到malloc从堆中分配内存.但我找不到那个(双**)在malloc面前的含义. 在此之后还有一行代码,我已经看过了. for (i = 0,DataT = (double
例如在这段代码中:

double **Data,*DataT;
Data = (double **)malloc(3*sizeof(double *)+3*12*sizeof(double));

我刚刚读到malloc从堆中分配内存.但我找不到那个(双**)在malloc面前的含义.
在此之后还有一行代码,我已经看过了.

for (i = 0,DataT = (double *)(Data+3); i < 3; i++,DataT += 12)

这里有一个(双*)在数据3前面

你能告诉我这是做什么的吗?
谢谢

解决方法

malloc()返回类型void *,而指针的类型为double *或double **. malloc之前的运算符 – 看起来像(类型) – 是类型转换运算符,需要将malloc的返回值转换为您正在使用的指针类型.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读