【发布时间】:2012-02-09 00:59:42
【问题描述】:
#include <QtCore/QCoreApplication>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
a.setApplicationName("xxx");
char bb[25] = {10, 1, 64, 18, 20, 116, 97, 114, 97, 110, 103, 105, 108, 108, 51, 64, 103, 109, 97, 105, 108, 46, 99, 111, 109};
char* aa = new char(25);
memcpy(aa, bb, 25);
delete aa;
return a.exec();
}
当我运行上面的代码时,大约五分之一的时候我得到以下错误:
tftest(28702,0x7fff70de3cc0) malloc: *** error for object 0x10160ee28: incorrect checksum for freed object - object was probably modified after being freed.
*** set a breakpoint in malloc_error_break to debug
Press <RETURN> to close this window...
这让我发疯,因为错误完全随机出现。
整个崩溃日志位于http://pastebin.com/Qtp9T2gW
【问题讨论】: