#include <windows.h>#include <cstdio>
#define DATA_AXIS_NUM 2048
int main(){int x,y,z,t; BYTE **pData;
 pData=(BYTE**)new BYTE *[DATA_AXIS_NUM];
 for(y=0;y<DATA_AXIS_NUM;y++) pData[y]=(BYTE*)new BYTE[DATA_AXIS_NUM];

 for(z=y=0;y<DATA_AXIS_NUM;y++)
  {
   for(x=0;x<DATA_AXIS_NUM;x++)
   {
    if(z==0&&z!=x%256)
     t=0;
    if(223<z&&z<230)
     t=0;
    pData[y][x]=(BYTE)z++;
   }
  z=0;
 }

 for(y=0;y<DATA_AXIS_NUM;y++) delete[] pData[y];
 delete[] pData;
 return 0;
}
(BYTE)223辺りから0を返してきますが、メモリ破壊してる?
VC++.NET&WinXP