Очень простой вопрос, я сделал следующую программу:
#include <stdlib.h>
int main(int argc, char ** argv)
{
void * ptr;
ptr = malloc(0);
free(ptr);
}
И это не означает, что моя машина. Это переносимое поведение stdlib malloc и бесплатно, или я ищу проблемы?
Изменить: то, что кажется не переносным, - это значение, возвращаемое malloc. Речь идет о malloc (0) + свободной комбинации, а не о значении ptr.