gcc编译通过,运行却显示“段错误”的解决方法
第一次在Liunx上(liunx mint 17)使用gcc编译c文件,竟然提示“找不到stdio.h",经过google后发现执行
sudo apt-get install build-essential
即可,详见:http://slipper-99933.blog.163.com/blog/static/39954044201021651833785/
正文:
刚学习了柔性数组,照教程写了用柔性数组生成斐波那契数列,经过一翻修改后gcc编译通过,运行时却提示“段错误”。google一下说很可能是数组赿界导致的内存访问错误。仔细检查果然是因为对未赋值的指针进行访问的缘故。
为避免这类问题以后凡是定义指针都要先初始化,还要严格注意对指针先赋值后访问。
修改前:
typedef struct _soft_array
{
int len;
int array[];
}softarray; softarray* create_soft_array(int size)
{
softarray* ret;
ret->len = size;
if( size > )
{
return ret = (softarray*)malloc( sizeof(*ret) + sizeof(int)*size );
}
return ret = NULL;
}
修改后:
typedef struct _soft_array
{
int len;
int array[];
}softarray; softarray* create_soft_array(int size)
{
softarray* ret = NULL;
if( size > )
{
ret = (softarray*)malloc( sizeof(*ret) + sizeof(int)*size );
ret->len = size;
}
return ret;
}
date:2014-10-25
gcc编译通过,运行却显示“段错误”的解决方法的更多相关文章
- Apache commons StringUtils 在运行时出现NoClassDefError错误的解决方法
Apache commons StringUtils 在运行时出现NoClassDefError错误的解决方法 在用tomcat运行WEB项目,并且使用了StringUtils包的时候,会出现 jav ...
- 创建Web项目运行时出小错误及解决方法
1.目录结构 2.各文件内容 index.jsp <%@ page contentType="text/html;charset=UTF-8" language=" ...
- win10下安装VS2005运行程序出现0x000007b错误的解决方法
项目工程一运行就报错...真心坑... 方法如下: 1.安装DirectX 9.0c 形成原因是因为DirectX 9.0被损坏, 只需要安装即可. 如果有电脑管家的.在电脑管家里面搜索“Direct ...
- 关于msbuild 编译.net 4.5新语法错误的解决方法
.net4.5以前msbuild 是在%windir%/Microsoft.NET/FrameworkXX/vXX目录下,如:C:\Windows\Microsoft.NET\Framework64\ ...
- vscode下搭建typescript时提示"无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称"错误的解决方法
根据网上的教程,安装了node.js后,再安装了typescript,,,这时候编译生成或者在vscode的终端里调用npm或者tsc --version时,总是提示 npm : 无法将"n ...
- 虚拟机VMware显示“内部错误”的解决方法
很有可能是VM服务没有启动,win+R services.msc 进入 “服务”,将VM相关的5个服务全部启动即可.
- GCC-4.6.3编译linux2.6.32.12内核出现“重复的成员‘page’”错误的解决方法
使用gcc4.6.3编译linux2.6.32.12内核出现错误如下: In file included from drivers/net/igbvf/ethtool.c:36:0: drivers/ ...
- 编译android源码遇到错误及其解决方法
升级ubuntu的14.04后,android的源码又编译错误了,一下是错误说明赫解决方法: 1.make: *** [out/host/linux-x86/obj/EXECUTABLES/aidl_ ...
- 运行bee run之后出现的错误以及解决方法Failed to build the application:
运行bee run之后出现的错误以及解决方法 创建一个beego项目 bee new myapp 在该项目执行下面的代码 bee run 出现的问题 2020/04/22 21:12:07 INF ...
随机推荐
- 纯js实现div内图片自适应大小
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- c#添加事物(全部执行和带保存点的执行)
全部执行 protected void Button2_Click(object sender, EventArgs e) { // 执行事务 SqlConnection con = new SqlC ...
- js 实现音乐播放
<html><head><title>这种方式支持任何浏览器</title></head><body><div id=&q ...
- position: absolute;绝对定位水平居中问题
position: absolute;绝对定位水平居中问题 用CSS让元素居中显示并不是件很简单的事情—同样的合法CSS居中设置在不同浏览器中的表现行为却各有千秋.让我们先来看一下CSS中常见的几种让 ...
- Codeforces 358D Dima and Hares
http://codeforces.com/contest/358/problem/D 题意:给出n个数,每个数取走的贡献与相邻的数有关,如果取这个数的时候,左右的数都还没被取,那么权值为a,如果左右 ...
- (转)fastcgi协议的简单实现
FastCgi不仅可以用于webserver与PHP的交互,也可用于任何两个应用之间的交互,PHPer用的比较多的应该就是用于两个子系统之间的交互. 比如A系统和B系统分部独立的部署在两台机器上,其之 ...
- 河内塔(hanoi)
理论: 河内塔: 1.有三根杆子A,B,C.A杆上有若干碟子 2.每次移动一块碟子,小的只能叠在大的上面 3.把所有碟子从A杆全部移到C杆上 讲解: 设A上有n个盘子.如果n=1,则将圆盘从A直接 ...
- Redis + Jedis + Spring 实例(对象的操作)
目录(?)[+] 不得不说,用哈希操作来存对象,有点自讨苦吃! 不过,既然吃了苦,也做个记录,也许以后API升级后,能好用些呢?! 或许,是我的理解不对,没有真正的理解哈希表. 一.预期 接上 ...
- PC-HTML5-搜索框
代码如下: <input type="text" placeholder="输入 回车搜索" autofocus x-webkit-speech>很 ...
- 迭代 Iterate
迭代:指按照某种顺序逐个访问列表中的每一项.比如:for语句 逐个访问: lst = ['q', 'i', 'w', 's', 'i', 'r'] for i in lst: print (i), # ...