memset是将计算机中C/C++语言初始化函数。作用是将某一块内存中的内容全部设置为指定的值,这个函数通常为新申请的内存坐初始化工作。
用法:
memset(首地址,值,sizeof(地址总大小));
例子:
memset(a,0,sizeof(a));
重点:
memset以字节为单位进行初始化,进行初始化时并不关心要初始化的数组是什么类型,它均以字节为单位进行初始化,比如数组是int
int为4字节,但是memset以字节进行初始化
memset(a,1,sizeof(a));
在a中每个元素占 4字节
比如int型的0为 0x00000000
int 型的最大值为 0x7FFFFFFF
0xF = 0b1111 占四位
1字节为8bit ,所以两位为1字节
使用memset进行初始化后会变为 0x01010101 也就是16843009
所以一下两种初始化效果是一样的
memset(a,-1,sizeof(a));
memset(a,255,sizeof(a));