这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 软件与操作系统 » 汇总一下C语言中的内存操作memcpy memmove memcmp memch

共4条 1/1 1 跳转至

汇总一下C语言中的内存操作memcpy memmove memcmp memchr memset

高工
2013-06-29 20:00:32     打赏

这两天做uTenux实验,经常会碰到一些内存块的操作,这里汇总一下。供参考。


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

从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中

      memmove
      

原型:void *memmove( void* dest, const void* src,size_tcount );
头文件
功能:由src所指内存区域复制count个字节到dest所指内存区域。
说明:
memmove用于从src拷贝count个字符到dest,如果目标区域和源区域有重叠的话,memmove能够保证源串在被覆盖之前将重叠区域的字节拷贝到目标区域中。但复制后src内容会被更改。但是当目标区域与源区域没有重叠则和memcpy函数功能相同。


int memcmp(const void *buf1, const void *buf2, unsigned int count);
比较内存区域buf1和buf2的前count个字节。
当buf1
当buf1=buf2时,返回值=0
当buf1>buf2时,返回值>0

memchr 原型:extern void *memchr(const void *buf, int ch, size_t count);
用法:#include
功能:从buf所指内存区域的前count个字节查找字符ch。
说明:当第一次遇到字符ch时停止查找。如果成功,返回指向字符ch的指针;否则返回NULL。

void *memset(void *s, int ch, size_t n);
函数解释:将 s 中前 n 个字节 (typedef unsigned int size_t)用 ch 替换并返回 s 。
memset:作用是在一段内存块中填充某个给定的值,它是对较大的结构体或数组进行清零操作的一种最快方法。



关键词: 汇总     一下     语言     中的     内存     操作     memcpy         

院士
2013-06-29 22:51:45     打赏
2楼

这个函数在需要

#include "string.h"

我来补充一下!

高工
2013-06-29 23:54:35     打赏
3楼
很多公司的面试也有这个东西!

高工
2013-06-30 00:00:38     打赏
4楼
这个知道的。百度上找的,我弄一起放上来了。 utenux实验里边大量使用!

共4条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]