Почему подобный код работает
#include <stdlib.h>
#include <stdio.h>
int main() {
int *array = malloc(1 * sizeof(int));
array[0] = 11;
array[1] = 22;
array[2] = 33;
printf("%d\n", array[2]);
}
? Ведь мы выделили только один элемент размера int.