当前位置:首页 > 内存 > 正文

malloc分配的内存连续吗

  • 内存
  • 2024-06-06 12:19:27
  • 8078

一、c语言中的这种代码是什么意思?请指教,谢谢函数malloc(size)在内存的动态存储区域中分配一块size字节的连续区域,参数size返回所需内存空间的长度,并返回该区域的起始地址。br/>sizeof()是一个运算符,用于确定数据类型或表达式的长度。
第一行double*ptd表示定义一个名为ptd的双精度指针
第二行(double*)强制后面的内容为double表示为精度指针类型
sizeof(typespecifier)表示获取该类型的大小
malloc(30*sizeof(double))表示30倍表示申请精度空间


二、kmalloc和malloc的区别计算机函数语言和malloc的含义如下:
1kmalloc是指在设备驱动程序或者内核模块中动态分配内存,而malloc没有分配内核的权力,而是分配用户内存
2确保分配的内存是连续的,这对于需要执行非必需连续DMA的设备来说非常重要,不能直接与DMA一起使用。
3kmalloc最大可以打开128k-16,其中16个字节被页面描述符结构占用。可以分配的大小有限,malloc可以分配的大小比较大
4一般来说,malloc比kmalloc慢