|
|
|
|
|
by apankrat
2808 days ago
|
|
It's worth noting that realloc(ptr, 0)
behavior is undefined. The vast majority of modern C libraries will implement it as return free(ptr), NULL;
and it will be documented on man pages as such, but there are systems where this will be equivalent to return free(ptr), malloc(0);
Furthermore, in theory, this is also permitted: return NULL;
so as tempting as realloc() might be as a single override for implementing custom allocators, there are some worms. |
|
If the size of the space requested is zero, the behavior is implementation-defined: https://port70.net/~nsz/c/c11/n1570.html#7.22.3