天天看点

内存复制函数memcpy与内存替换函数memset

一.memcpy函数声明:

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

作用是从src指向的内存地址开始,复制count个字节到dest指向的内存地址。

故dest指向的内存地址必须是一片已经分配好的内存空间首地址。

memcpy由于是复制内存,故可用于复制任何数据,包括int、char、结构体、类、图片、文档,等等。

头文件:

C语言中使用#include <string.h>;

C++中使用#include <cstring>和#include<string.h>都可以。

通常在复制字符串时用strcpy,而需要复制其他类型数据时则一般用memcpy

二.memset函数声明:

void*memset(void* src, intch, size_t n);

作用是将src中前n个字节用ch替换并返回src。

若要清空一片内存区,比如要把一个char a[20]清零,则:

memset(a,0,20);

三.strncat函数声明:

void *strncat (char *dest,char *src,int n);

作用是将src所指字符串的前n个字符添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'。