千家信息网

C语言内存操作函数有哪些

发表于:2025-11-12 作者:千家信息网编辑
千家信息网最后更新 2025年11月12日,本篇内容主要讲解"C语言内存操作函数有哪些",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"C语言内存操作函数有哪些"吧!头文件:#include1.memc
千家信息网最后更新 2025年11月12日C语言内存操作函数有哪些

本篇内容主要讲解"C语言内存操作函数有哪些",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"C语言内存操作函数有哪些"吧!

头文件:#include

1.memcpy

作用:内存拷贝

函数原型:

void *memcpy( void *dest, const void *src, size_t count );

使用:

使用格式:memcpy(目的地,原,想操作内存大小(单位字节))

把 "参数2" 起始的 "参数3" 个字节 内容拷贝到 "参数1 '

memecpy函数类似于strncpy。

例:

#include #include #include int main(){        int aa[] = { 1,2,3,4 };        int bb[10] = { 0 };        memcpy(bb, aa, 4 * sizeof(int));//把aa数组中4*4(每个int类型是4字节)内容拷贝到bb数组        for (int i = 0; i < 10; i++) //打印bb数组全部数据        {                printf("%d ", bb[i]);        }       }

最后bb字符串中前4*4个字节的内容被改为aa的内容

注意 :memcpy不能拷贝重叠内存。

#include #include #include int main(){        int aa[] = { 1,2,3,4,5,6,7,8,9,10 };        my_memcpy(aa + 2, aa, 24);        for (int i = 0; i < 10; i++)        {                printf("%d ", aa[i]);        }}

输出:

拷贝重叠内存会出现这样的问题。

2.memmove

作用:内存拷贝(可拷贝重叠内存)

原型:

void *memmove( void *dest, const void *src, size_t count );

使用与memcpy一样,只是memmove可以拷贝重叠内存

#include #include #include int main(){        int aa[] = { 1,2,3,4,5,6,7,8,9,10 };        memmove(aa + 2, aa, 24);        for (int i = 0; i < 10; i++)        {                printf("%d ", aa[i]);        }}

出:

同样的代码使用memmove就可以.

3.memcmp

作用:内存比较

函数原型:

int memcmp( const void *buf1, const void *buf2, size_t count );

使用:

使用格式:memcmp(地址1,地址2,想要比较的内存大小 单位bit)

逐字节比较内存大小,

逐字节一对一对比较!!

返回值有三种情况:

<0 "参数1" 与 "参数2" 逐字节比较时遇到的第一对不同的内存时 "参数1" 中数据 < "参数2"。

=0 "参数1" 与 "参数2" 中的前" 参数" 三个字节的内容完全相等。

>0 "参数1" 与 "参数2" 逐字节比较时遇到的第一对不同的内存时 "参数1" 中数据 > "参数2"。

4.memset

作用:内存设置

函数原型:

void *memset( void *dest, int c, size_t count );

使用:

使用格式:memset(地址,一个数,设置多少字节)

例:

#include int main(){        int a[] = {1,2,3,4,5};        memset(a, 1, 20);//把从a开始的前二十个字节内容改成1}

结果:

到此,相信大家对"C语言内存操作函数有哪些"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

内存 参数 字节 内容 拷贝 函数 作用 原型 语言 地址 大小 数据 数组 格式 不同 单位 学习 实用 更深 三个 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 服务器更新换代的速度 pg数据库去换行 大学生参加校园网络安全大赛 为什么喜欢网络技术 需求分析 软件开发 比例 山东戴尔服务器维修调试多少钱 诸暨怡和软件开发有限公司电话 宁波舜宇车载光学技术软件开发 河北网络安全知识竞赛 智慧果 软件开发 上海 节点服务器集群管理 电源是服务器组件中支持冗余的吗 电力网络安全监测装置 数据库读取速度为什么快 java 读取服务器配置 美国欧盟网络安全对话 软件开发如何接入在线问诊平台 市网络安全应急指挥中心值得去吗 2012搭建证书服务器 qq登录服务器怎么打开 花季传媒怎么服务器连接失败 柏伦网络技术 网络技术质量保障措施范文 山西网络技术服务销售 数据库临时表的创建 辽宁pdu服务器电源价格是多少 泾县现代软件开发服务代理品牌 查询数据库的命令是 5g网络安全研究现状 碧蓝航线官方服务器
0