omnet++调试~~指针指针bugbug

两个星期了~调我那个破程序两个星期了~虽然现在还没有完全调好~但在我快要崩溃的时候终于出现了点儿希望

现在一个wlan的那个版本已经完全不崩溃了~跑的很happy~但是两个wlan的还在调试中。。

虽然任务还很艰巨~困难还重重~但我还是想来mark下偷笑

面对omnet程序的崩溃~


这个只要点结束程序就退出了~会在console里面输出时由于exit code:255之类的提示~完全不会出现任何错误提示

debug的时候到了崩溃的时间也会跑过去~没什么错误~我这个崩溃啊

刚开始看到这个图时~我真是要哭了~看多了欲哭无泪~再看就麻木了

我在网上反复查exit code是什么原因,但是也没有找到一些明确的原因。无非是说指针可能被释放后还在调用之类的。

但是要在自己的程序中找到这种指针的问题谈何容易~我就这样一遍一遍的看我的程序出错的地方~没把这个搞定~但却找到一些

其他地方的问题(还在解决中)~主要是如何正确的调用两个wlan

我之前是调试的小白痴~什么都不会呀~通过这两个星期的郁闷时期终于也会一点儿基本的东西了~

最后说下我出错的原因~其实就是我在

payload->addPar(paraNonrecBlockID) = nonrec;

包中添加了一个指针(nonrec)但是在取出时却不是我放进去的那个指针地址了,这。。。

坑爹呀~就不说我经历的荆棘了~主要原因就是我的指针指向的第一个数是0,这取出时肯定会出现一点问题,因为数组的结束符号就是/0

同志们切记不要将指针指向的数组的第一个数存为0,传递给其他的指针啊~

我血一样的教训啊~希望还是给人一点儿警示啦

下面的代码是从包中取出指针,这个也有点儿讲究

const char *nonrec = (const char *)(pkt->par(paraNonrecBlockID));

这样就不会有错了~

希望与有同样问题的同志共勉~

指针出错真的是好烦~委屈

不过好好调试~好好研究还是可以解决的~像我这样的用两个星期解决这个小问题的真是一朵奇葩了

加油吧~omneter(嘿嘿~我自己起的用omnet的人们)

我还有个硬骨头要啃~2个wlan~如果有人用过的就教教呗~先在此谢过了吐舌头

come on 加油

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值