gdb调试实例分析

调试段错误案例

http://fanqiang.chinaunix.net/program/other/2006-07-14/4834.shtml原链接


Starting program: /home/linux/workdir/interview/string_operation/debug


Program received signal SIGSEGV, Segmentation fault.
0x08048435 in strToint (str=0x0) at atoi.c:15
15                if((*str != '\0') && (str != NULL)){
(gdb) where
#0  0x08048435 in strToint (str=0x0) at atoi.c:15
#1  0x080485c7 in Test (string=0x0) at atoi.c:56
#2  0x08048622 in main (agrc=1, argv=0xbffff704) at atoi.c:65




(gdb) list
10
11      int strToint (const char *str){
12              g_nstatus = invalid;
13              long long num = 0;
14              //if((str != NULL) && (*str != '\0')){ //这种情况程序运行正常
15                if((*str != '\0') && (str != NULL)){ //和上面前后位置调换出现Segmentation fault.(????有待解决)
16                      bool minus = false;
17                      if(*str == '+'){
18                              str++;
19                      }else if(*str == '-'){

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值