碰到“段错误 (核心已转储)“的问题

软件和网站开发以及相关技术探讨
回复
cmjauto
帖子: 27
注册时间: 2013-01-23 21:46
系统: windows xp

碰到“段错误 (核心已转储)“的问题

#1

帖子 cmjauto » 2013-03-05 22:04

大家好!
最近在使用getsockopt()函数,按照书上的例子写下来,编译能通过,可是运行时就出错了,错误如下:段错误 (核心已转储)

然后,我又在用了gdb调试,发现了错误的句子,可是还是不明白为什么会出现这种内存访问错误。
代码在附件中,请查看,是建立一个udp客户端的程序,错误我已在代码段中标记出来。
最悲剧的莫过于知道错误在哪,却不知道如何解决 :em19
16.3.c
(1.5 KiB) 已下载 125 次
头像
YeLee
论坛版主
帖子: 26406
注册时间: 2008-08-13 8:48
系统: Fundu i64
来自: 东海硇州,一双管钥。
联系:

Re: 碰到“段错误 (核心已转储)“的问题

#2

帖子 YeLee » 2013-03-05 22:30

bzero(&addr,sizeof(addr))这行修改为bzero(addr,sizeof(addr))吧,bzero第一个参数是一个指针,你这里是一个指向指针的指针了,反而吧addr的地址设置为NULL了。 :em01 :em01 :em01
◎当我站在道德的高度上俯视别人的时候,发现自己是多么渺小。
♥执着但不偏激,反对而不排斥,坚决捍卫矛盾体的存在方式。
★★★天气预报★★★
fcitx-yatable一个可以使用的码表输入法
[教程]几个实例攻克软件编译难关
Gentoo Development Guide
字体相关
cmjauto
帖子: 27
注册时间: 2013-01-23 21:46
系统: windows xp

Re: 碰到“段错误 (核心已转储)“的问题

#3

帖子 cmjauto » 2013-03-06 20:01

YeLee 写了:bzero(&addr,sizeof(addr))这行修改为bzero(addr,sizeof(addr))吧,bzero第一个参数是一个指针,你这里是一个指向指针的指针了,反而吧addr的地址设置为NULL了。 :em01 :em01 :em01
谢谢,已经多次麻烦您了,呵呵
回复