我用memset初始化整个数组结果失败了。
//想初始化一个全是9的int数组
int num[20];
memset(num, 9, sizeof(num) * sizeof(int));
最后输出的是20个151587081。
原因是memset是按照一个字节一个字节来赋值的,以字节为单位,这样的话每个字节就会变成9,一个int型的值占4个字节就会变成0x09090909,转换成十进制就是151587081。
当然初始化为0是没问题的。
对于char数组可以使用,因为char类型数据占一个字节。
这里如果想实现上面的效果,可以使用fill函数或fill_n函数