免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: steve2005
打印 上一主题 下一主题

请教一个segmentation fault的问题 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2005-09-10 13:36 |只看该作者

请教一个segmentation fault的问题

原帖由 "luojiannx" 发表:
我的意思就是你有些该申请空间的,没有申请

你检查一下每次使用结构/指针的时候是不是都申请空间了

没法跟你沟通下去了
再说俺也根本无法调试你的程序


我都是用结构啊,还需要申请空间吗?
我写了好些东西都是这样用的,
不用申请空间的吧??!!

论坛徽章:
0
12 [报告]
发表于 2005-09-10 15:09 |只看该作者

请教一个segmentation fault的问题

原帖由 "steve2005" 发表:


我都是用结构啊,还需要申请空间吗?
我写了好些东西都是这样用的,
不用申请空间的吧??!!

1、先贴出你的结构体strXTCS的声明。
2、strXTCS结构体中有这样一个成员:csbz
根据你这一句
  1. strcmp(lstr_cssz[i].csbz,var)
复制代码

可以猜测csbz可能是一个指向字符的指针或是一个字符串数组。
3、luojiannx的意思可能是说如果csbz是一个指针,那么你是不是为她指向的内容分配了空间?(不知道说的对不对啊luojiannx兄?)

论坛徽章:
0
13 [报告]
发表于 2005-09-10 15:37 |只看该作者

请教一个segmentation fault的问题

嗯,是那个意思

论坛徽章:
0
14 [报告]
发表于 2005-09-10 15:40 |只看该作者

请教一个segmentation fault的问题

他的程序能运行成功,说明csbz不可能是个指针,只能是个数组
结构体应该没有问题

论坛徽章:
0
15 [报告]
发表于 2005-09-10 15:47 |只看该作者

请教一个segmentation fault的问题

论坛徽章:
0
16 [报告]
发表于 2005-09-10 15:49 |只看该作者

请教一个segmentation fault的问题

看他li_jzny是个什么类型,如果是个int就没问题
说实在的,楼主的代码实在。。。
可能出错的地方:
1、csbz不够大,溢出,造成串结束符'\0'丢失
2、csbz长度大于10
以上都会在strcpy()时core dump

论坛徽章:
0
17 [报告]
发表于 2005-09-10 16:06 |只看该作者

请教一个segmentation fault的问题

原帖由 "yzc2002" 发表:
看他li_jzny是个什么类型,如果是个int就没问题
说实在的,楼主的代码实在。。。
可能出错的地方:
1、csbz不够大,溢出,造成串结束符'\0'丢失
2、csbz长度大于10
以上都会在strcpy()时core dump

代码实在是有点混乱,尤其是命名是吧?
int li_jzny;

typedef struct
{
        UCHAR cslb[2];               
          UCHAR csbz[21];               
          UCHAR csz[61];       
}strXTCS;

我不我jzny这个字段里只保存一个200508的.
是定义的char ls_jzny[10];这里只有10太短的原因吗?

论坛徽章:
0
18 [报告]
发表于 2005-09-10 16:09 |只看该作者

请教一个segmentation fault的问题

atoi(const char *p)
在p是NULL的时候肯定会段错误
LZ你就勤快点,到处判断一下指针是不是NULL也好缩小范围啊

论坛徽章:
0
19 [报告]
发表于 2005-09-10 16:10 |只看该作者

请教一个segmentation fault的问题

oh

论坛徽章:
0
20 [报告]
发表于 2005-09-10 16:10 |只看该作者

请教一个segmentation fault的问题

[quote]原帖由 "steve2005"]只有10太短的原因吗?[/quote 发表:

怎么也得对应啊
不一定出错
但起码就是有漏洞的
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP