memset(array, val, cnt)包含在头文件<string.h>里面
第一个参数array是一个数组的地址,val是要赋的值,cnt是从array这个地址开始往后总共赋值几个,memset赋值是按照字节来赋值的,比如:
int num[10];
char c[10];
memset(num, 0, sizeof(num)); 将数组num初始化为0
memset(c, ’a‘, sizeof(a));将字符数组c初始化为a,因为char类型占1个字节,所以可以赋值结果正确
看下面这种情况:
memset(num, 1, sizeof(num));这个赋值后num数组不为1,因为int类型占4个字节,这里也就是把int类型的每个字节都赋值为了1,所以最后结果合起来不是1
几个常用的可用数字:
memset(num, 0, sizeof(num));
memset(num, -1, sizeof(num));
memset(num, 0x3f3f3f3f, sizeof(num));