关于C语言拷贝函数的随笔
工作上要用到这些函数,稍微理解了一下这些函数的分别,写一篇简短的随笔:
1、char *strcpy(char *dest, char *src); 这个函数把src所指由'\0'结束的字符串复制到dest所指的数组中。 src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。 当src串长度>dest串长度时,程序仍会将整个src串复制到dest区域,可是dest数组已发生溢出。
2、char * strncpy(char *dest, char *src, size_t,n); 将字符串src中最多n个字符复制到字符数组dest中(它并不像strcpy一样遇到NULL才停止复制,而是等凑够n个字符才开始复制),返回指向dest的指针。
3、void *memcpy(void *dest, const void *src, size_t n);由src指向地址为起始地址的连续n个字节的数据复制到以dest指向地址为起始地址的空间内。.source和destin所指内存区域不能重叠,函数返回指向destin的指针。 与strcpy相比,memcpy并不是遇到'\0'就结束,而是一定会拷贝完n个字节。 如果目标数组destin本身已有数据,执行memcpy()后,将覆盖原有数据(最多覆盖n)。如果要追加数据,则每次执行memcpy后,要将目标数组地址增加到你要追加数据的地址。
相关推荐
徐建岗网络管理 2020-07-28
lynjay 2020-06-14
AaronPlay 2020-06-13
penkgao 2020-10-13
penkgao 2020-06-25
lsfreeing 2020-06-20
Biao 2020-06-17
yunfeitian 2020-06-13
chensen 2020-11-14
拉斯厄尔高福 2020-11-04
杜倩 2020-10-29
拉斯厄尔高福 2020-10-19
嵌入式资讯精选 2020-10-15
zhaochen00 2020-10-13
yiyilanmei 2020-10-05
wanshiyingg 2020-09-29
Mars的自语 2020-09-27
shenwenjie 2020-09-24
一个逗逗 2020-09-22