c语言内存拷贝 memcpy()函数
需包含头文件:C 标准库 - <string.h>
文章目录
- 描述
- 声明
- 参数
- 返回值
- 实例1
- 实例2
- 实例3:覆盖原有部分数据
描述
C 库函数 void *memcpy(void *str1, const void *str2, size_t n) 从存储区 str2 复制 n 个字节到存储区 str1。
声明
下面是 memcpy() 函数的声明。
void *memcpy(void *str1, const void *str2, size_t n)
参数
str1 -- 指向用于存储复制内容的目标数组,类型强制转换为 void* 指针。
str2 -- 指向要复制的数据源,类型强制转换为 void* 指针。
n -- 要被复制的字节数。
返回值
该函数返回一个指向目标存储区 str1 的指针。
实例1
下面的实例演示了 memcpy() 函数的用法。
// 将字符串复制到数组 dest 中
#include <stdio.h>
#include <string.h>int main ()
{const char src[50] = "http://www.runoob.com";char dest[50];memcpy(dest, src, strlen(src)+1);printf("dest = %s\n", dest);return(0);
}
运行结果:
dest = http://www.runoob.com
实例2
#include <stdio.h>
#include<string.h>int main(){const char* s = "http://www.runoob.com";char d[20];memcpy(d, s + 11, 6);// 从第 11 个字符(r)开始复制,连续复制 6 个字符(runoob)// 或者 memcpy(d, s+11*sizeof(char), 6*sizeof(char));d[6] = '\0';printf("%s", d);return 0;
}
运行结果:
runoob
实例3:覆盖原有部分数据
#include<stdio.h>
#include<string.h>int main(void)
{char src[] = "***";char dest[] = "abcdefg";printf("使用 memcpy 前: %s\n", dest);memcpy(dest, src, strlen(src));printf("使用 memcpy 后: %s\n", dest);return 0;
}
运行结果:
使用 memcpy 前: abcdefg
使用 memcpy 后: ***defg
参考文章:C 库函数 - memcpy()
c语言内存拷贝 memcpy()函数相关推荐
- C语言中关于memcpy函数
关于memcpy函数 **memcpy指的是C和C++使用的内存拷贝函数,函数原型为void *memcpy(void destin, void source, unsigned n):函数的功能是从 ...
- C语言模拟实现memcpy函数
void * memcpy ( void * destination, const void * source, size_t num ); 该函数是内存操作的拷贝函数,函数memcpy从source ...
- 用C语言模拟实现memcpy函数,memmove函数
一. memcpy函数 void * memcpy ( void * destination, const void * source, size_t num ); 复制内存块 将num字节的值从源指 ...
- C语言之使用memcpy函数实现小数组数据不覆盖地复制到大数组
我需要循环地将取到的N维字符数组依次存入大数组中. char total_str[102400] = {0}; char tmp_str[128] = {0}; memset(tmp_str,'\0' ...
- C语言 memcpy 函数 - C语言零基础入门教程
目录 一.memcpy 函数简介 二.memcpy 函数实战 1.memcpy 函数简单使用 2.strcpy 函数属于字符串拷贝 3.memcpy 函数属于内存拷贝 4.memcpy 函数注意崩溃问 ...
- c语言memcpy函数源代码,memcpy函数-memcpy函数,C语言
本教程分享:<memcpy函数>, memcpy是memorycopy的缩写,意为内存复制,在写C语言程序的时候,我们常常会用到它.它的函原型如下:. void * memcpy ; .如 ...
- c语言中存储字符用什么函数,那些C语言中你不知道的字符串函数(坑)
1.strcpy() 在字符串拷贝函数中,它的函数编写不难,如下 char* Strcpy(char* dest, const char* src) { assert(dest != NULL &am ...
- 让你提前认识软件开发(8):memset()与memcpy()函数
第1部分 重新认识C语言 memset()与memcpy()函数 软件项目中的代码,少则数千行,多则上万行,但并非无规律可循.阅读了那么多代码之后,我发现有两个函数出现的频率很高,那就是memset( ...
- C语言------内存管理
系列文章目录 c语言指针 项目开发常用字符串应用模型 文章目录 作用域 局部变量 全局变量 extern全局变量声明 静态变量 静态(static)局部变量 静态(static)全局变量 未初始化 全 ...
最新文章
- 【Linux】Linux简单操作之文件管理
- Linux C SQLite3 编程
- Java 递归解决 quot;仅仅能两数相乘的计算器计算x^yquot; 问题
- AI:一个20年程序猿的学习资料大全—BAT等面试资料/NECCS大赛资料/一二级建造师/网络编程爬虫等/公务员——只有你不想要的,没有你找不到的
- 最新android版本奥利奥,最新Android 8.1即将来临,你想吃奥利奥了吗?
- There is no public key available for the following key IDs
- 静态Include和动态Include测试并总结
- 对应生成树的基本回路_7.1 图的定义与基本术语
- linux fstab解读
- mysql5.6 python_Centos-6.5 + python3 + mysql5.6 环境搭建
- RxHttp 一条链发送请求之注解处理器 Generated API(四)
- cnn加工是什么意思_天秤座R-CNN:全面平衡的目标检测器
- Linux 小知识翻译 - 目录 (完结)
- GBA编程和汉化常用软件汇总
- python3 词频统计计数分析+可视化词云 jieba+wordcloud 数据分析
- VScode远程root权限调试
- 二层交换机与三层交换机的区别
- xrandr 只有一个显示屏_特斯拉Model 3显示屏拆解分析
- 从Scrum之父探源敏捷方法论
- iOS10怎么升级?iOS10 beta1升级教程
热门文章
- linux地柜查找文件_linux-find【递归搜索文件名】
- swift瀑布流实现_CSS 实现瀑布流布局(display: flex)
- SAP创建生产订单时要求输入销售订单
- 释疑の语法LOCAL
- 【CIO说】转型SaaS,为什么Oracle、SAP的第一选择是人力资源软件
- 如何成为国内敏捷BI领跑者?这家企业的经验值得借鉴
- “奶茶第一股”香飘飘,“香”不起来了?
- 夯实“茄克”核心竞争力,高端新国货谋图百年基业
- 新东方财报背后:增收不增利之下,“下沉”“上线”能有坦途?
- 超出网络bios会话限制_什么是UEFI,它和BIOS有什么不同?