C语言中的memalign函数用于分配内存并返回一个指向分配内存的指针。
该函数的定义如下:
void *memalign(size_t alignment, size_t size);
参数说明:
返回值:如果分配成功,则返回指向新分配内存的指针;如果分配失败,则返回NULL。
使用示例:
#include <stdio.h>
#include <stdlib.h>
int main() {
int *ptr;
ptr = (int *)memalign(16, sizeof(int) * 10);
if(ptr == NULL) {
printf("内存分配失败\n");
return 1;
}
printf("内存分配成功\n");
free(ptr);
return 0;
}
上述示例中,使用memalign函数分配了一个大小为10个int元素大小的内存空间,并要求内存按16字节对齐。如果分配成功,则输出"内存分配成功",并最后使用free函数释放内存。
需要注意的是,使用memalign函数分配的内存,必须使用free函数进行释放,否则会导致内存泄漏。