extern _ARMABI int posix_memalign(void ** /*ret*/, size_t /*alignment*/, size_t /*size*/);
时间: 2023-09-03 15:12:28 浏览: 164
MT6260D_key_extern.zip_单片机开发_C/C++_
这是一个函数声明,声明了一个名为`posix_memalign`的函数,它的返回类型是`int`。它的参数包括一个指向指针的指针`void ** ret`,一个`size_t`类型的`alignment`和一个`size_t`类型的`size`。这个函数用于分配一个指定大小和对齐方式的内存块。
这个函数的声明与`memalign`函数有些类似,不同之处在于参数的命名和顺序可能有所不同,但它们的基本实现流程是相似的。`memalign`函数也是用于分配指定大小和对齐方式的内存块,其中`boundary`参数指定了内存块的地址需要是`boundary`的倍数。需要注意的是,`boundary`必须是2的幂。这个函数可以分配较大的内存块,并且可以为返回的地址指定粒度。
在GNU系统中,`malloc`或`realloc`函数返回的内存块地址都是8的倍数(在64位系统上是16的倍数)。如果你需要更大的粒度,可以使用`memalign`、`valloc`或`posix_memalign`这些函数来分配内存。这些函数在`stdlib.h`头文件中声明。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [GNU系统下内存对齐分配的记录](https://blog.csdn.net/tugouxp/article/details/119776876)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
阅读全文