Мой вопрос очень простой. Допустим, у нас есть:
char* ptr = (char*) malloc(sizeof(char)*SIZE);
ptr+= SIZE/2;
free(ptr);
Что происходит, когда мы освобождаем указатель? Это неопределенная операция? Освобождает ли он весь буфер SIZE или только оставшийся размер SIZE / 2? Thanks in advance for disambiguating this for me.