关于C++调试经验给下

来源:百度知道 编辑:UC知道 时间:2024/06/30 02:25:37
我每次程序没有错误,但是一运行就崩溃了啊,然后我也不知道怎么去调试啊,调试的指针指向的地方没有错误啊也。。。。给我下经验吧
能详细一些不啊

崩溃的程序一般都是你的指针乱指了

很多是野指针导致的

新人最常见的错误就是char *p=new char[n];

然后就拿p来乱指,结果调试的时候看到什么都是对的
但程序一跑就崩溃

动态开辟的内存,一定不要用原始指针乱指,不然它移动了位置
在默认delete的时候就会导致内存访问越界

所以char *p=new char[n];后再加一句char*q=p;
然后用q来做操作

再有一些就是函数里面传指针,而局部指针生存期到了
结果没注意到

一步一步跟 能step into的就跟进去
使用指针一定要记得初始化

一般是写一个类调试一个,调试的时候用二分法很容易定为错误的路口