都是
0x7c931ec3 处未处理的异常: 0xC0000005: 写入位置 0x018990ba 时发生访问冲突 。
0x7c931f52 处未处理的异常: 0xC0000005: 读取位置 0x000c01e3 时发生访问冲突 .这样的异常
观察调用堆栈发现问题都在new和delete函数里,发生的错误都在ntdll.dll

还有就是错误报告也很有意思,明明是intel的CPU,可它的提示是
错误报告:CPU AMD Feature Code: 00C3E824......
我的代码应该没问题,要不然怎么在我的旧电脑和我同学的电脑上没发生过内存异常
最近我遇到了一个BUG,一直找不出原因,看到你这篇文章,我想问问你是否遇到过类似的问题.
我前几天买了台新电脑,P4 64bit的CPU,我的旧电脑是AMD 64bit的,都是32位的XP系统,我的程序在我的旧电脑上运行了了20多天(15-30个进程,每天运行20个小时),从来没有发生过内存异常.但我的程序在新电脑上频繁发生异常,运行3个进程平均二小时就会发生一次,经过调试发现异常总是出现在内存分配和释放里:
1:局部string对象的自动释放出错(STL的string);
2;new出错,而且new的字节也很小,才200字节左右;
3:delete出错,被删除的内存块调试发现也是正常的,并不是无效内存块;

开始我以为是因为多个线程同时申请堆内存,导致出现争夺的情况,于是我给每一个new和string构造的地方都加了EnterCriticalSection(&cs);LeaveCriticalSection(&cs);,结果还是频繁出现异常.

这BUG真的很古怪,而且我在我同学的电脑上运行了4天(60个进程,20小时每天),一个异常都没出现