问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C++程序调试时出现“Program received signal SIGSEGV,Segmentation fault.”一般是什么原因,求指导。

发布网友 发布时间:2022-10-16 21:39

我来回答

5个回答

热心网友 时间:2023-10-24 07:31

是因为指针未初始化或越界,访问到了未分配地址的空间。

#include<iostream>

usingnamespacestd;

intmain(){

intiYear,iMonth,iDay,iDays;boolbFlag=true;

cout<<"请输入日期(年/月/日):"<<endl;

scanf("%4d/%2d/%2d",&iYear,&iMonth,&iDay);

switch(iMonth)

{

case1:;

case3:;

case5:;

case7:;

case8:;

case10:;

case12:iDays=31;break;

case4:;

case6:;

case9:;

case11:iDays=30;break;

case2:if((iYear%4==0)&&(iYear%100!=0)||(iYear%400==0))iDays=29;

elseiDays=28;break;

default:bFlag=false;

}

if(bFlag)

cout<<"此日期对应月的天数是:"<<iDays<<endl;

else

cout<<"输出错误:"<<endl;

system("pause");

}

扩展资料

未初始化的内存

如:p已被分配了10个字节。这10个字节可能包含垃圾数据。

char*p=malloc(10);

垃圾数据

如果在对这个p赋值前,某个代码段尝试访问它,则可能会获得垃圾值,您的程序可能具有不可预测的行为。p可能具有您的程序从未曾预料到的值。

结合使用memset和malloc,或者使用calloc。

char*p=malloc(10);

memset(p,’’,10);

热心网友 时间:2023-10-24 07:31

程序里执行了无效的内存引用。

对于不正确的内存处理,计算机程序可能抛出SIGSEGV。操作系统可能使用信号栈向一个处于自然状态的应用程序通告错误,由此,开发者可以使用它来调试程序或处理错误。
  在一个程序接收到SIGSEGV时的默认动作是异常终止。这个动作也许会结束进程,但是可能生成一个核心文件以帮助调试,或者执行一些其他特定于某些平台的动作。

热心网友 时间:2023-10-24 07:32

指针未初始化或越界,访问到未分配地址空间,触发了硬件的一般性访问异常,内核捕捉到异常后,会把你的运行环境 mp 到一个文件中,然后结束该进程。
你可以用调试程序打开这个 mp 的文件,调试程序会告诉你是哪条指令触发了异常,你可以根据调试信息定位到源程序。

热心网友 时间:2023-10-24 07:32

scanf没加&时会出现这种情况。

热心网友 时间:2023-10-24 07:33

数组越界;
除0;
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
大学入学应该带哪些必备物品? tim删除聊天记录的方法步骤 pc端彻底删除tim聊天记录 甩脂机调到什么档位 如何用甩脂机 甩脂机的正确使用方法 使用抖脂机要注意什么 怎样申请小号微信号 ...的长和宽分别增加6米,扩建后草坪的面积增加了多少 ...扩建后长和宽分别增加10米,扩建后的操场面积增加了多少平方米?_百 ... 长方形的公园它的面积长和宽分别扩大十米后它的平方增加了面积增加了13... 非诚勿扰李丛琳照片被谁带走了 带土偷偷亲琳照片在那一集 汽车的汽油滤清器容易出问题,最好多长时间检查一次? 丰田的机油过滤器是通用的吗? 汽车日常保养有必要每次都更换机油过滤器吗? 阴茎根部发痒,有藓状红红的一小片,有时这一小片回脱皮 阴囊潮湿 还是股沟藓 看图片 求专家来看看 阴茎长癣 怎么办? 什么是阴藓,后什么症状。 科学家们首次在太空中进行原子干涉测量 水果罐头加工会混入哪些玻璃 康茜妮毕业于什么学校 假面骑士铠武的故事背景 第一排第四排是三个脚,第二排和第三排是四个脚的中间继电器如何接线? 迅雷怎么老是一大堆鉴宝广告小视频? 颐达嗽叭继电器排大几 奥拓大王子喇叭继电器排在第几个位置? 继电器共有几对触点,底座的排列顺序是怎样的 6脚继电器引脚排列顺序是什么 冬天要冷好久,什么时候不冷 Program received signal SIGSEGV, Segmentation fault.gdb调试出错。 c++ 二维数组取值,报错 Signal: SIGSEGV (Segmentation fault) 欧盟宣布准备好俄罗斯断供天然气,是真的吗? C语言报错program received signal sigsegv,求大神指点,谢谢! 求大神解答,哪里出了问题,调试时出现了program received signal SIGSEGV错误 有国家“偷气”被发现,俄罗斯:彻底断绝其天然气供应,到底是哪个国家? c语言出现Program received signal SIGSEGV, Segmentation fault是什么原因? 欧盟与美国达成大额天然气交易,这一消息意味着什么? 到港区富士康地铁哪一站下车 德国拟自10月1日起征收天然气附加税,天然气危急该如何度过? 德国提前2周实现存储95%天然气目标,是否能解除风险? 从伊川县到港区富士康怎么坐车 大专生到郑州富士康可以干什么 新推出的MR30相比原先金插有什么不同 平衡车轮子上面的黄色接头是什么? 请问以下:金刚石和石墨哪个的密度大?可以的话说详细点,最好是具体的数字!谢谢! 真三国无双MR30级以上要什么装备? 索尼KLV-MR30M1开机指示灯闪烁什么故障 万安罗盘制作技艺的制作工序 怎么做罗盘