越界访问 段错误-急急急,用gdb调试程序出现段错误

问题描述

急急急,用gdb调试程序出现段错误

出错的函数如下:
NodeTp*Crt(int n,char b[],char jj[])
{

int i;
NodeTp *p,*h,*last;
CreateNode(h);
last=h;
for(i=0;i
{
if(jj[i]=='2')
{
CreateNode(p);
if(b[i]=='1')
{
p->pf[0]=a[i][0];
p->pf[1]=a[i][1];
p->pf[2]=a[i][2];
p->SA=0;
last->next=p;
last=p;
}
else
{
p->SA=2*a[i][1];
p->pf[0]=a[i][2];
p->pf[1]=a[i][1];
p->pf[2]=a[i][0];
last->next=p;
last=p;
}
}

else
{if((jj[i]=='1')&&(b[i]=='1'))
{
CreateNode(p);
p->SA=2*a[i][1];
p->pf[0]=a[i][2];
p->pf[1]=a[i][1];
p->pf[2]=a[i][0];
last->next=p;
last=p;
}
else

{if((jj[i]=='0')&&(b[i]=='1'))
{
CreateNode(p);
p->pf[0]=a[i][0];
p->pf[1]=a[i][1];
p->pf[2]=a[i][2];
p->SA=0;
last->next=p;
last=p;
}
else
{if((jj[i]=='1')&&(b[i]=='0'))
{
CreateNode(p);
p->pf[0]=1;
p->pf[1]=1;
p->pf[2]=1;
p->SA=0;
last->next=p;
last=p;
}
else

{
CreateNode(p);
p->pf[0]=1;
p->pf[1]=1;
p->pf[2]=1;
p->SA=0;
last->next=p;
last=p;
}
}
}
}
}
last->next=NULL;
return h;

}
用gdb调试出现:
Program received signal SIGSEGV, Segmentation fault.
0x080491c4 in Crt (n=12, b=0x3e680000

, jj=0x804dfd8 "200111101100") at unconsider2.c:231
if(b[i]=='1')
根据gdb的提示信息说是b数组越界访问,但总找不出具体错误在哪,还请大神指教!

解决方案

有没有为node next等分配内存,指针和数组有没有越界。
你可以上传完整的源代码到codepad.org,并且将链接贴出来,好帮你调试。

解决方案二:

数组索引i是否在正确范围

时间: 2024-09-19 18:22:52

越界访问 段错误-急急急,用gdb调试程序出现段错误的相关文章

svn-添加SVN资源库出现错误 急急急

问题描述 添加SVN资源库出现错误 急急急 添加svn资源库死活添加不进去 ,地址输入正确,总是报错误,求大神指点, 我都弄了好长时间了 解决方案 急急急急急 解决方案二: 在eclipse中的配置文件对了么,这样的提示出现在确认地址正确的情况下的话,那就是配置文件的问.重新集成下svn在IDE

关于myeclipse连接sql2005产生的错误~急急急!

问题描述 privatestaticvoidinitConn(){try{DriverManager.registerDriver(newcom.microsoft.jdbc.sqlserver.SQLServerDriver());conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://ACER-PC:1111;DatabaseName=chat","sa","sa123");S

如何修改此类错误 急急急!

问题描述 我在编程过程中出现如下错误:"Login1:LayoutTemplate未包含用于用户名的ID为UserName的IEditableTextControl"怎么解决啊!请各位高手帮帮忙,万分感激. 解决方案 解决方案二:把你的代码贴出来大家看看解决方案三:下面是相关代码,麻烦大家帮忙看一下<%@PageLanguage="C#"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transition

急急急!跪求这段更新语句怎么分层

问题描述 SqlConnectionconn;SqlDataAdaptersd;DataSetdata;privatevoidVip_Load(objectsender,EventArgse){stringsql="datasource=.;initialcatalog=ShopMark;uid=sa;pwd=123456";conn=newSqlConnection(sql);stringsql1="selectIdas'编号',VipRankas'会员级别',IdName

json怎么转换成hashmap,转换以后如何与id进行判断。求大神指点!谢谢!!!急急急

问题描述 json怎么转换成hashmap,转换以后如何与id进行判断.求大神指点!谢谢!!!急急急 我现在有一段json数据 jsonArray json=JSONArray.fromObject(message); message的数据为[id,name,passwode,id,name,passwode,id,name,passwode--] 怎么把json的数据转换成hashmap以后与查询出的数据进行判断. 例如hashmap<u1,id><u2,id>-- 数据库的数据

用gdb调试程序笔记: 以段错误(Segmental fault)为例

用gdb调试程序笔记: 以段错误(Segmental fault)为例[转] 1.背景介绍2.程序中常见的bug分类3.程序调试器(如gdb)有什么用4.段错误(Segmental fault)介绍5.gdb调试入门  一.背景介绍这个笔记主要介绍开源的程序调试器(gdb)的入门知识,目的是使unix/linux环境的编程新手能够快速学会使用gdb调试程序的方法,同时也是对我使用gdb的一个经验总结.本文假设你能使用简单的unix/linux命令并能用gcc(GNU C Compiler, GN

ibatis-08177错误,急急急求解,谢谢。

问题描述 08177错误,急急急求解,谢谢. --- The error occurred while applying a parameter map. --- Check the jcrw.updateCheckRecord-InlineParameterMap. --- Check the statement (update failed). --- Cause: java.sql.SQLException: ORA-08177: 无法连续访问此事务处理 ]; SQL was [jcrw.

环境-主机无法访问Vbox中的tomcat,急急急...

问题描述 主机无法访问Vbox中的tomcat,急急急... 环境: 虚拟机:Vbox 虚拟机操作系统:CentOS7 Tomcat:Tomcat7 主机操作系统:Windows7 问题: 已经在虚拟机中即CentOS下可以访问tomcat,主机无法访问, 如图: 虚拟机网络配置如图: 看到网上说关防火墙,关掉后依然无法访问. 求助.急急急!!!! 解决方案 没有网!能访问才奇怪了,你在windows下用啥IP访问的啊.配置下网卡,重启网络后再试吧 解决方案二: 先ping一下虚拟机,如果pin

coco2d x编译-coco2d-x编译错误(急急急)

问题描述 coco2d-x编译错误(急急急) 技术提问: 我这边是别人的项目,我现在已经运行,已经导入到ecilpse里面去了,但是就是在用build_native.py这个编译的时候编译不成功,这个是什么原因,希望尽快帮忙解决一下