virtualpointer=(char*) VirtualAlloc (NULL, (unsigned __int64) (1<<31), MEM_RESERVE, PAGE_READWRITE);
mainhashbuf=progression=virtualpointer;
VirtualAlloc (progression, (unsigned __int64) (1<<15), MEM_COMMIT, PAGE_READWRITE);
progression=progression+capacity;
*(mainhashbuf+1000)='c';
mainhashbuf、progression、virtualpointerはcharへのポインタです。最初にスペースを予約し、仮想ポインターがそのスペースを指すようにします。次に、他の2つのポインターを仮想ポインターに等しく設定します。次に、プログレッション(現在はリザーブスペースも指している)を使用してそのスペースのコミット(1 << 15)を行い、プログレッションポインターをインクリメントします。次に、mainhashbufがポイントする必要がある現在コミットされているスペースに値を設定しようとしますが、書き込み例外が発生します。virtualallocを間違って使用しているか、ポインターが実際にどのように機能するかについて間違った概念を持っていますか?