Dre*_*wen 10 c memory-management realloc c11
考虑以下(C11)代码:
void *ptr = aligned_alloc(4096, 4096);
... // do something with 'ptr'
ptr = realloc(ptr, 6000);
Run Code Online (Sandbox Code Playgroud)
由于ptr指向的内存具有4096字节的对齐aligned_alloc,是否(读取:是否保证)在(成功)调用之后保持该对齐realloc?或者内存可以恢复为默认对齐?
对齐不与指针保持一致.当您调用realloc时,您只能依赖realloc保证的对齐方式.您需要使用aligned_alloc来执行任何重新分配.