目录

生成core文件

1. 添加生成core文件的准备

2. 修改配置文件

3. 重新执行一下,使能配置文件

core文件的解析

整体使用示例

1. 写一个最简单的段错误的文件(给空指针赋值)

2. 编译执行

3. gdb执行core文件

--end--


生成core文件

1. 添加生成core文件的准备

ulimit -SHc unlimited
ulimit -u unlimited

2. 修改配置文件

vi /etc/sysctl.conf
kernel.core_pattern = /tmp/core-%e-%p# 在文件的最后 添加上面这条命令,这条命令,是默认的保存位置,当前设置的保存位置是 /tmp/目录下
# 文件名为 core-命令名-pid# 如果不添加这个,产生的core文件,默认 会在执行可执行文件时 所在的目录下,文件名为 core

3. 重新执行一下,使能配置文件

sysctl -p /etc/sysctl.conf

core文件的解析

gdb <产生当前段错误的可执行文件> <产生的core文件>

进入gdb调试工具后

输入 bt

打印出来的就是 产生 段错误(核心已转储)的对应位置,及原因

整体使用示例

1. 写一个最简单的段错误的文件(给空指针赋值)

#include <stdio.h>int test()
{int *ptr = NULL;*ptr = 0;
}int main()
{test();return 0;
}

2. 编译执行

3. gdb执行core文件

3.1 core文件名称

-rw------- 1 root root 245760 Sep  4 12:38 core_a.out_212167

3.2 gdb执行(我把可执行文件拿过来了--这样看起来比较简洁)

gdb ./a.out core_a.out_212167

3.3 回车后具体显示如下

3.4 输出 bt 回车

根据 #0 能看出来 产生段错误的原因在 test() 函数中,所以可以直接去看一下 具体代码,分析产生的原因(或者添加打印一些调试信息)

--end--

C语言段错误-core文件相关推荐

  1. linux段错误core dumped,段错误 (core dumped) 之 core文件

    当我们的程序崩溃时,内核有可能把该程序当前内存映射到core文件里,方便程序员找到程序出现问题的地方.最常出现的,几乎所有C程序员都出现过的错误就是"段错误"了.也是最难查出问题原 ...

  2. [转] Linux C语言 段错误bug的调试

    原来看过一次,后来当自己有段错误的时候,才想起来这个很有用.如果不用他的方法,段错误很恶心的,不好找出来的. 下面就是原文,不过 最初出处不得而知 ======================= 复制 ...

  3. linux内存不足+段错误,Linux系统内存错误产生的原因及调试方法(段错误|core dumped)[转]...

    产生段错误就是访问了错误的内存段,一般是你没有权限,或者根本就不存在对应的物理内存,尤其常见的是访问0地址. 一般来说,段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来 ...

  4. 005 Linux系统内存错误产生的原因及调试方法(段错误|core dumped)

    Linux系统内存错误产生的原因及调试方法(段错误|core dumped)[转] Posted on 2008-09-05 14:52 猫头鹰 阅读(84) 评论(0)  编辑 收藏 引用 所属分类 ...

  5. php段错误coredumped,段错误 (core dumped)

    当我们的程序崩溃时,内核有可能把该程序当前内存映射到core文件里,方便程序员找到程序出现问题的地方.最常出现的,几乎所有C程序员都出现过的错误就是"段错误"了.也是最难查出问题原 ...

  6. mysql 段错误 (core dumped)_CentOS yum 段错误 (core dumped)解决办法

    最近在装mysql时提示C++编译器版本太低,后来用yum install 和 yum update 都出现段错误并终止运行,搜了一下午的贴,第二天终于找到原因了,一般有两种: (第一种)我的yum ...

  7. mysql出现core dumped_mysql 段错误 (core dumped)

    一直使用好好的mysql命令,突然今天抽风,无论使用任何mysql选项都报"段错误 (core dumped)",以为是mysqld程序出问题了,所以我尝试重启,因为我的环境上是多 ...

  8. php段错误coredumped,CentOS yum 段错误 (core dumped)解决方法

    今天在yum install 或者yum update的时候都提示段错误(core dumped),然后终止运行了. 复制代码代码如下: [root@lee ~]# yum -y update Loa ...

  9. linux段错误core dumped,Linux下Segmentation fault(core dumped)简单调试方法

    ** 什么是Segmentation fault? ** Segmentation fault就是段错误,一般指访问的内存超出了系统给这个程序所设定的内存空间,例如访问了不存在的内存地址.访问了系统保 ...

  10. c语言 段错误 指针,求教为什么指针动态申请了空间,scanf的时候还会段错误

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 while(1) { printf("是否要创建新一条学生信息?(y/n)\n"); scanf("%s",ch) ...

最新文章

  1. 坐标下降+随机梯度下降
  2. 金山吹响讨伐灰鸽子的号角
  3. 从零开始编写自己的C#框架(23)——上传组件使用说明
  4. [数据结构与算法] : 栈的链式实现
  5. react typescript 父组件调用子组件
  6. (译)SDL.NET Surfaces 相关介绍
  7. anaconda moviepy_Anaconda使用之安装篇(Windows)
  8. 跟着王道考研学计算机网络笔记(一):初步了解计算机网络
  9. 无线充电设计(一)-基本介绍
  10. 高低温试验箱的11点使用注意事项说明
  11. 实践出真知-神经网路篇-多任务学习
  12. 【BZOJ1135】【POI2009】Lyz
  13. 基于uniapp开发app,省市区联动
  14. IM在线客服系统_开源在线客服系统附源码
  15. fsw是什么意思_什么叫FSW焊接
  16. 理论力学(静力学)-4-平面力偶系
  17. 计算机网络中 冲突域、广播域
  18. 数据分析之Matplotlib和机器学习基础
  19. php7.1.9 mcrypt,PHP7.1中使用openssl替换mcrypt
  20. 【C语言】自定义类型(结构体、位段、枚举、联合体)与内存对齐

热门文章

  1. sap abap开发从入门到精通_给你的ABAP对象打上标签(Tag)
  2. python微信语音转发方法_微信语音转发最方便的方法,我现在才知道
  3. UCI数据集+机器学习+十折交叉验证
  4. android dazen root,Magisk作者再度出击,成功ROOT了Android 11
  5. 魔兽国服修改服务器地址,魔兽国服退役服务器上架暴雪官方商店
  6. 一级计算机选择题汇总,计算机一级考试选择题汇总.pdf
  7. c语言各种头文件函数解释,c语言头文件及其函数
  8. 联想y470上三代cpu_联想Y470笔记本i3处理器能换i5或者i7处理器嘛?
  9. 机器学习发展历史回顾
  10. ViewStub延迟加载