C语言 strcpy,memcpy,memmove,memccpy函数

1.原型:extern char *strcpy(char *dest,char *src);

用法:#include <string.h>

功能:把src所指由NULL结束的字符串复制到dest所指的数组中。

说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。

返回指向dest的指针。

2.原型:extern void *memcpy(void *dest, void *src, unsigned int count);

用法:#include <string.h>

功能:由src所指内存区域复制count个字节到dest所指内存区域。

说明:src和dest所指内存区域不能重叠,函数返回指向dest的指针。

3.原型:extern void *memmove(void *dest, const void *src, unsigned int count);

用法:#include <string.h>

功能:由src所指内存区域复制count个字节到dest所指内存区域。

说明:src和dest所指内存区域可以重叠,但复制后src内容会被更改。函数返回指向dest的指针

4.原型:extern void *memccpy(void *dest, void *src, unsigned char ch, unsigned int count);

用法:#include <string.h>

功能:由src所指内存区域复制不多于count个字节到dest所指内存区域,如果遇到字符ch则停止复制。

说明:返回指向字符ch后的第一个字符的指针,如果src前n个字节中不存在ch则返回NULL。ch被复制。

注意:内存重叠问题.

时间: 2024-10-11 22:17:09

C语言 strcpy,memcpy,memmove,memccpy函数的相关文章

strcpy, memcpy, memset函数

一. strcpy函数 原型声明:char *strcpy(char* dest, const char *src); 头文件:#include <string.h> 和 #include <stdio.h> 功能:把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间 说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串. 返回指向dest的指针. 实现代码: char * strcpy(char * strDest,c

[转]memmove、memcpy和memccpy

原文地址:http://www.cppblog.com/kang/archive/2009/04/05/78984.html 在原文基础上进行了一些小修改~ memmove.memcpy和memccpy三个函数都是内存的拷贝,从一个缓冲区拷贝到另一个缓冲区. memmove(void *dest,void*src,int count) memcpy(void *dest,void *src,int count) memccpy(void*dest,void*src,int ch,int coun

C语言之memcpy函数

昨天自己动手实现memcpy这个函数,用一个例程试了一下,结果正确,满心欢心,可是有些地方想不明白,于是百度了一下,结果自己写的函数简直无法直视. 觉得还是写个总结,以示教训. 先贴上我自己的函数: [cpp] view plain copy  char *mymemcpy(char *dest, const char * src, int n) { char *pdest; char *psrc; pdest = dest; psrc = src; for(n; n>0; n--) { *pd

走进C标准库(7)——"string.h"中函数的实现memcmp,memcpy,memmove,memset

我的memcmp: 1 int memcmp(void *buf1, void *buf2, unsigned int count){ 2 int reval; 3 while(count && !(reval = (*(unsigned char *)buf1) - (*(unsigned char *)buf2))) 4 { 5 buf1 = (unsigned char *)buf1 + 1; 6 buf2 = (unsigned char *)buf2 + 1; 7 --count

C语言--strcpy()函数

strcpy,即string copy(字符串复制)的缩写. strcpy是一种C语言的标准库函数,strcpy把含有''\0'结束符的字符串复制到另一个地址空间,返回值的类型为char*. C语言 strcpy() 函数用于对字符串进行复制(拷贝). 头文件:string.h 语法/原型: char* strcpy(char* strDestination, const char* strSource); 参数说明: strDestination:目的字符串. strSource:源字符串.

【转】C语言mem.h中的函数介绍

函数名称:     memccpy函数原型:     void *memccpy(void *dest, const void *src, int c, size_t n)函数功能:     字符串拷贝,到指定长度或遇到指定字符时停止拷贝函数返回:参数说明:     src-源字符串指针,c-中止拷贝检查字符,n-长度,dest-拷贝底目的字符串指针所属文件:     string.h,mem.h #include string.h#include stdio.hint main(){    c

strcpy, mencpy, memmove三者区别

首先来看strcpy,目的是实现字符串的复制,这里需要注意几个点: 1.判断指针的有效性 2.将复制后的指针地址返回,为了支持链式操作 3.不要忘记将字符串最后一个自负'\0'复制给dest 4.注意原字符串类型为const,保证在函数内部不会被修改 char* myStrcpy(char* dest, const char* src){ assert(dest!=NULL && src !=NULL); char* r = dest; while((*dest++ = *src++)!=

C语言的常用字符串操作函数(一)

一直做的是单片机相关的程序设计,所以程序设计上更偏向底层,对于字符串的操作也仅限于液晶屏幕上的显示等工作,想提高下字符串操作的水平,而不是笨拙的数组替换等方式,翻看帖子发现C语言的字符串操作函数竟然这样丰富而实用,在此记录,已备后用. No.1 strlen():字符串长度计算函数 应用实例: 1 #include<stdio.h> 2 #include<string.h> 3 4 char TextBuff[] = "Hello_My_Friend!"; 5

[VC]strcpy memcpy memset区别与简介

strcpy 原型:extern char *strcpy(char *dest,char *src); 用法:#include <string.h> 功能:把src所指由NULL结束的字符串复制到dest所指的数组中. 说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串.       返回指向dest的指针.memcpy 原型:extern void *memcpy(void *dest, void *src, unsigned int count);