在LINUX下写类似如下程序时,出现段错误

int main()

{

char *a="11111111";

char *b ="2222222";

printf("before a:%s b:%s\n",a,b);

memcpy(a,b,8);

printf("after a:%s b:%s\n",a,b);

return 0;

}

而在UNIX下,能正常编译。

原因:

在unix上,系统对内存管的比较松,而在linux下,指针a 可能是指向了一个只读的内存。

解决办法:

int main()

{

char *a;

char *b;

char str1[]="00000000";

char str2[]="11111111";

a=(char *)malloc(8);

b=(char *)malloc(8);

memcpy(a,str1,8);

memcpy(b,str2,8);

printf("after a:%s b:%s\n",a,b);

return 0;

} 这样就不会出现段错误了,因为malloc出来的地址都是可以正常访问的。

c语言对空指针memcpy,C语言memcpy 断错误相关推荐

  1. c语言memcpy函数源代码,memcpy函数-memcpy函数,C语言

    本教程分享:<memcpy函数>, memcpy是memorycopy的缩写,意为内存复制,在写C语言程序的时候,我们常常会用到它.它的函原型如下:. void * memcpy ; .如 ...

  2. C语言 空指针 NULL - C语言零基础入门教程

    目录 一.指针简介 二.空指针 NULL 三.关于 NULL 和 0 四.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 一.指针简介 在前面 ...

  3. C语言 回调函数 callback - C语言零基础入门教程

    目录 一.回调函数原理 二.回调函数简介 1.函数指针 2.指针函数 3.回调函数解释 三.回调函数实战 四.回调函数使用总结 五.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 ...

  4. C语言 数组长度计算 - C语言零基础入门教程

    目录 一.计算数组长度 1.经典案例 2.计算数组长度 二.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 一.计算数组长度 1.经典案例 / ...

  5. C语言 数组内存溢出 - C语言零基础入门教程

    目录 一.数组内存溢出简介 二.数组内存溢出实例 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 一.数组内存溢出简介 溢出:想象一个桶, ...

  6. c语言 hello world代码_C语言基础

    首先,还是从hello world开始. #include <stdio.h> int main(void) { printf("Hello Worldn"); ret ...

  7. C语言 const 修饰指针 - C语言零基础入门教程

    目录 一.const 简介 二.const 修饰指针 1.const int *p 2.int const *p 3.int * const p 4.const int * const p 三.猜你喜 ...

  8. C语言 const 修饰变量 - C语言零基础入门教程

    目录 一.const 简介 二.const 实战 1.使用 const 修饰变量必须初始化 2.使用 const 修饰变量不初始化 3.修改 const 修饰变量的值 三.重点提示 四.猜你喜欢 零基 ...

  9. 用C语言学生成绩数据库排序功能设计,[c语言学生成绩管理系统]C语言学生成绩管理系统实验报告...

    篇一 : C语言学生成绩管理系统实验报告 实 验 四:结构体(6学时) 实验目的: 1.更加灵活的使用数组作为函数参数: 2.初步掌握开发一个小型实用系统的基本方法: 3.初步掌握书写程序设计开发文档 ...

  10. C语言基础01——初识C语言

    目录 什么是C语言 第一个C语言程序:HelloWorld 初识数据类型 初识常量.变量 初始字符串.转义字符.注释 初识选择语句.循环语句 初识函数.数组 初识关键字 定义常量和宏 格式化输入输出 ...

最新文章

  1. Android学习路线
  2. Maven+mybatis教程
  3. pandas.read_csv()跳过读取文件报错行
  4. c#读写XML文件 (转)
  5. C# .net中cookie值为中文时的乱码解决方法
  6. Hotstar赛事直播编码组合优化
  7. 网络爬虫--20.【Scrapy-Redis实战】分布式爬虫获取房天下--代码实现
  8. 变分法理解1——泛函简介
  9. 将网卡中断分布到多个cpu上的方法
  10. 学习Android 应注意的十个问题
  11. Android关于Theme和style的总结
  12. 巧用 /etc/rc.local,开机时完成一些自动任务 - GNU/Linux,Windows的終結者 - KM大宝 - 和讯博客...
  13. Echart用法介绍
  14. 聊聊面试培训机构学员的感受
  15. ubuntu虚拟机上外网设置
  16. 阿尔法策略和贝塔策略
  17. android 4.4 设置谷歌拼音输入法为默认输入法,android4.4修改出厂默认输入法
  18. jquery控制div的显示与隐藏
  19. 适合女生学的技术有哪些?
  20. 园区元宇宙:打造智慧园区综合治理可视化管理平台

热门文章

  1. python培训班那家好-python培训班那个好?
  2. 编程爱好者学vb还是python-编程语言Java和Python对比哪个比较好
  3. python3.5安装-Linux:Python3.5安装和配置
  4. 如何自学python爬虫-python爬虫学习过程:
  5. python编程工具p-python Gui开发工具选择
  6. python兼职 在家工作-在家兼职的人或者是自由职业的人都在做什么?
  7. python编程爱心-python画一个玫瑰和一个爱心
  8. python编程语言是什么-Python编程语言的特点是什么?老男孩Python学习
  9. NVIDIA Jetson Xavier NX中安装的python库包的版本
  10. git clone 出现错误 Could not resolve host: github.com