strcpy、strncpy、memcpy

strcpy

char *strcpy(char *s2, const char *s1);

参数:
s1:原字符串
s2:目标字符串

解释:strcpy是一种C语言的标准库函数,strcpy把含有’\0’结束符的字符串复制到另一个地址空间中,返回值的类型为char*,返回s2的值。

功能:把从s1地址开始且含哟NULL结束符的字符串复制到以s2开始的地址空间。

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

strncpy

char *strncpy(char *s2, const char *s1, size_t n);

参数:
s1:表示复制的目标字符数组;
s2:表示复制的源字符数组;
n:表示复制的字符串长度。

解释:strncpy函数用于将指定长度的字符串复制到字符数组中,是C语言的库函数之一,把s1所指向的字符串中以s1地址开始的前n各字节复制到s2所指的数组中,并返回被复制后的s2。

说明:函数strncpy从s1指向的数组中最多复制n个字符(不复制空字符后面的字符)到s2指向的数组中。如果复制发生在两个重叠的对象中,则这种行为未定义。

返回值:
函数strncpy返回s2的值。

strncpy比strcpy的安全性高。

memcpy

void *memcpy(void *s1, const void *s2, size_t n);

参数:
s1:指向用于存储复制内容的目标数组,类型强制转换为void*指针。
s2:指向要复制的数据源,类型强制转换为void* 指针。
n:要被复制的字节数。
解释:从源内存地址的起始位置开始拷贝若干个字节到目标内存地址中,即从源s2中拷贝n个字节到目标s1中。

说明:
函数memcpy从s2指向的对象中复制n个字符到s1指向的对象中。如果复制发生在两个重叠的对象中,则这种行为未定义。

功能:从源s2所指的内存地址的起始位置开始拷贝n各字节到目标s1所指的内存地址的起始位置中。

返回值:
该函数返回一个指向目标存储区s1的指针。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值