关于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的就跟进去
使用指针一定要记得初始化
一般是写一个类调试一个,调试的时候用二分法很容易定为错误的路口