【解决】munmap_chunk(): invalid pointer

来源:清泛原创     2021-08-06 15:55:13    人气:     我有话说( 0 人参与)

原因:new malloc出来的指针被覆盖掉了,然后delete free就会报这个错误。例如:char* word = (char*)malloc(10);word = "abc"; 应使用 strcpy(word, "abc");free(word)

原因:new/malloc出来的指针被覆盖掉了,然后delete/free就会报这个错误。
例如:
char* word = (char*)malloc(10);
word = "abc";  //应使用 strcpy(word, "abc");
free(word);   //崩溃报错
实际项目中可能此类问题没法直观定位到,推荐使用gcc自带的 asan 检查内存错误。

asan 内存跟踪

注:本文为本站或本站会员原创优质内容,版权属于原作者及清泛网所有,
欢迎转载,转载时须注明版权并添加来源链接,谢谢合作! (编辑:admin)
分享到: