这篇文章主要介绍了C语言详解如何模拟内存函数,用到了mencpy与memmove两个函数,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
前言
内存是CPU与外存进行沟通的桥梁。
在冯·诺依曼计算机结构中,存储器是计算机的存储部件,是信息存储的核心,用来存放程序和数据。 存储器分为内存(内存储器、主存储器)和外存(外存储器、辅助存储器)。 CPU能够直接访问的存储器是内存。外存用于帮助主存记忆更多的信息,外存内的信息必须调入内存后,才能被CPU所使用。因此,内存是CPU与外存进行沟通的桥梁。
模拟实现简单的内存函数
1.memcpy-内存拷贝函数(应该拷贝不重叠的内存)
函数memcpy从source的位置开始向后复制num个字节的数据到destination的内存位置。
这个函数在遇到 '\0' 的时候并不会停下来。
如果source和destination有任何的重叠,复制的结果都是未定义的。
调试结果
2.memmove-内存拷贝函数(可以拷贝重叠的内存)
和memcpy的差别就是memmove函数处理的源内存块和目标内存块是可以重叠的。 如果源空间和目标空间出现重叠,就得使用memmove函数处理。
调试结果
总结
上述简单模拟实现了两个内存函数的使用,相信大家都学会了。如果上述文章有任何问题 ,欢迎大佬们提出质疑,我会虚心学习和改正,最重要的是能共同进步,共同成长,学习好编程。
到此这篇关于C语言模拟内存函数分析之mencpy与memmove的文章就介绍到这了,更多相关C语言 mencpy内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
本文标题为:C语言模拟内存函数分析之mencpy与memmove
- Easyx实现扫雷游戏 2023-02-06
- C语言手把手带你掌握带头双向循环链表 2023-04-03
- Qt计时器使用方法详解 2023-05-30
- ubuntu下C/C++获取剩余内存 2023-09-18
- 我应该为我的项目使用相对包含路径,还是将包含目录放在包含路径上? 2022-10-30
- C语言详解float类型在内存中的存储方式 2023-03-27
- c++ const 成员函数,返回一个 const 指针.但是返回的指针是什么类型的 const? 2022-10-11
- C语言qsort()函数的使用方法详解 2023-04-26
- C++ 数据结构超详细讲解顺序表 2023-03-25
- 详解C语言中sizeof如何在自定义函数中正常工作 2023-04-09
