1.memcpy:
从a数组中复制k个元素到b数组:
memcpy(b,a,sizeof(int)*k);
#include<cstring> #include<iostream> #include<cstdio> using namespace std; int a[10],b[20]; int main(){ for(int i=0;i<10;i++) cin>>a[i]; for(int i=0;i<10;i++) cin>>b[i]; memcpy(b,a,sizeof(int)*5); for(int i=0;i<20;i++) cout<<b[i]<<" "; }
【输入】
1 2 3 4 5 6 7 8 9 10
10 9 8 7 6 5 4 3 2 1
【输出】
1 2 3 4 5 5 4 3 2 1 0 0 0 0 0 0 0 0 0 0
(b数组的值被更新了,上面的话b数组的前k个值就被赋值变成了a数组的前k个值【从0开始qwq】b数组其他值不变)
将a全部赋值给b:
memcpy(b,a,sizeof(a));
#include<cstring> #include<iostream> #include<cstdio> using namespace std; int a[10],b[20]; int main(){ for(int i=0;i<10;i++) cin>>a[i]; for(int i=0;i<10;i++) cin>>b[i]; memcpy(b,a,sizeof(a)); for(int i=0;i<20;i++) cout<<b[i]<<" "; }
【输入】
1 2 3 4 5 6 7 8 9 10
10 9 8 7 6 5 4 3 2 1
【输出】
1 2 3 4 5 6 7 8 9 10 0 0 0 0 0 0 0 0 0 0
为什么突然写这个,因为用到了啊qwq(我是不会告诉你人家是题解上用的qwq)
原文地址:https://www.cnblogs.com/zhuier-xquan/p/10712565.html
时间: 2024-11-07 05:34:27