【细小碎的oi小知识点总结贴】不定时更新(显然也没人看qwq)

时间:2021-08-28 09:55:16

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)

 2.数据类的东西吧qwq:

①int范围的无穷大:INT_MAX,无穷小INT_MIN。

②memset赋值:可以正常赋值的:-1,0;神奇的赋值:(一个很大的数)0xfff(大概几个f是没问题的qwq)