指针问题不一定是想的那么难

        捋别人的老项目,又是指针崩溃,搜了一圈代码,没发现什么特殊的,以为是哪个线程又进行了删除,然后再删除的时候出的问题。冷静下来仔细想了一会,感觉不是,又去查看了一下指针分配空间的代码,终于发现了一些问题。原来的分配是根据读取配置参数进行的分配。条件如下。

if (nStart != 0 && nEnd != 0 && nStart < nEnd) 

问题就出在最后一个小于号上,代码里看到的逻辑是起始小于结束才创建,可是有的地方还要进行判断。而对于有些特殊情况,起始是等于结束。

       最后的解决就是把小于号改为小于等于。

        业务逻辑没写出来,只能从代码上看真累。

        对于没有文档的项目,说心里话,就是自己坑自己。

发布了14 篇原创文章 · 获赞 4 · 访问量 7441

猜你喜欢

转载自blog.csdn.net/yxmlhc/article/details/83714937
今日推荐