代码如下

#include<iostream>
using namespace std;void f(char **s) {*s = "chenyu";
}typedef struct _node {int val;struct _node *next;
} Node;typedef struct _link {Node *front;Node *rear;
} Link;void queue(Link *link) {
//  link.front = link.rear = NULL; //这个地方不是.而是-> 请注意link->front = link->rear = NULL;
}int main() {cout<<1<<endl;char *s;char **a;a = (char **)malloc(sizeof(char **));*a = "chenyu";f(&s);cout<<s<<endl;cout<<*s<<endl;cout<<*a<<endl;char *b = {"hello"};printf("%p\n",b);printf("%s\n",b);cout<<*b<<endl;Link *link;// link = (Link *)malloc(sizeof(Link *));queue(link);return 0;
}

编译没错

然后运行就出问题了

然后加上

 link = (Link *)malloc(sizeof(Link *));

就可以了

由于未分配内存的指针导致段错误相关推荐

  1. 未分配内存的指针导致段错误

    一个最简单的队列初始化操作案例: 编译可以通过:但是运行程序时,会出现段错误:Segmentation fault 分析:主函数中声明了队列的一个指针(只是声明,并未实际分配地址空间),调用初始化函数 ...

  2. Rust语言——无虚拟机、无垃圾收集器、无运行时、无空指针/野指针/内存越界/缓冲区溢出/段错误、无数据竞争...

    2006年,编程语言工程师Graydon Hoare利用业余时间启动了Rust语言项目.该项目充分借鉴了C/C++/Java/Python等语言的经验,试图在保持良好性能的同时,克服以往编程语言所存在 ...

  3. 使用未初始化内存的指针

    当我们使用未初始化的内存指针时,会导致程序无法进行,因为指针并没有指向一个合法的地址,这时候其内部存的只是一些乱码.所以在调用函数时,会使用乱码所指的内存,指针根本就无权访问,导致出错. 看一段代码 ...

  4. cv::imread导致段错误_网络诊断举例LSO导致的网络性能问题

    网络问题导致的性能问题是十分难以诊断的,特别是因为网络丢包而导致的性能问题,因为甚至你都看不到有任何错误产生.在这种案例下,通过netstat -s看到的统计数据中,TCP/UDP均没有报错.只是在一 ...

  5. 驱动从PC指针分析段错误

    我们将驱动程序故意改一句话  我们都知道寄存器要ioremap之后才能用.在驱动程序里面不能使用物理地址 或者对那种没有初始化指针的时候你操作也会出错.我现在故意引入这个错误 我们修改以前的LED代码 ...

  6. 关于调用子函数给主函数指针分配内存

    典型的错误例子如下 在这个主函数的指针给子函数传递一个指针,而在子函数中形参有开辟了一块内存,此子函数的指针的内存里存储的地址与主函数是同一地址, 即主函数的指 针和子函数形参的指针都指向同一块内存的 ...

  7. java分配内存之TLAB

    java分配内存之TLAB new对象与指针碰撞 TLAB的出现 TLAB的缺点 作者:叶满林 链接:https://www.jianshu.com/p/8be816cbb5ed 来源:简书 方式:转 ...

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

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

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

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

最新文章

  1. python爬取音乐并保存_python3 实现爬取TOP500的音乐信息并存储到mongoDB数据库中
  2. 网络相关的一些基本的命令的使用(ping、ifconfig、route、netstat)---Linux学习笔记
  3. 1.8 编程基础之多维数组 22 神奇的幻方 python
  4. seaborn绘制概率密度图
  5. 用户领域 API 监控和代码注入检测
  6. Atitit 提升开发效率总结 目录 1. declara dynamic Dsl化 fp script 1 1.1. 各种语法新特性 linq等 2 1.2. duck typing。 2
  7. 0基础入门VTD—前言
  8. 全自动共享软件破解器4.8
  9. php 中国地图编辑,科学网—如何正确绘制中国示意性地图?编辑给您提建议 - 科学出版社的博文...
  10. 深度之眼Pytorch打卡(六):将数据集切分成训练集、验证集和测试集的方法
  11. win7取消计算机开机密码怎么设置,【win7】:当你想关闭开机密码的时候该怎么设置呢?...
  12. Constraints --- transition(clock transition、input transition、max transition)
  13. 爆笑的程序员梗,笑死人不偿命!
  14. 发年终奖了,可以安心过个好年了~
  15. User root is not allowed to impersonate anonymous
  16. 改变世界的windows操作系统
  17. 蓝桥杯2018年第九届真题——乘积尾零
  18. Unity编辑器开发(五):实战、开发一个AB包编辑器工具
  19. Modbus-异常响应
  20. 5G大规模MIMO增强技术及发展趋势

热门文章

  1. ML.NET 示例:图像分类模型训练-首选API(基于原生TensorFlow迁移学习)
  2. 深入研究.NET 5的开放式遥测
  3. 玩转控件:对Dev中GridControl控件的封装和扩展
  4. 依赖倒置原则(DIP)、控制反转(IoC)、依赖注入(DI)(C#)
  5. 从ASP.NET Core 3.0 preview 特性,了解CLR的Garbage Collection
  6. 在ASP.Net Core 中使用枚举类而不是枚举
  7. 各大主流K8S服务全方位能力比对
  8. 基于Kubernetes 构建.NET Core 的技术体系
  9. 十年 IT 老兵带你通过案例学架构,附C#代码
  10. 工厂参观记:.NET Core 中 HttpClientFactory 如何解决 HttpClient 臭名昭著的问题