Я знаю, что 32-битная Windows допускает для любого процесса максимум 2 ГБ адресного пространства памяти.2 гигабайта = 2147483648 байт.Я пытался выделить кучу памяти намного больше, чем 2147483648 байт, и я не увидел ни ошибки, ни исключения, вот код:
# include<iostream>
int main(){
void *x=malloc(2147489999);
free(x);
system("pause");
return 0;
}
в чем причина?