memset函数的原型为:void *memset(void *, int , unsigned),这个函数可以一字节一字节地把整个数组设置为一个指定的值。第1个参数void *表示地址,用于接收数组的起始地址, 第2个参数int 是设置数组每个字节的值。第3个参数是数组的长度(字节数,不是元素个数)。
一直以来我都把第二个参数当成了数组元素的值,结果今天就犯了错误,我在程序里这么写:
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
结果数组每个元素都变成了257,二进制即为0000 0001 0000 0001
memset函数的原型为:void *memset(void *, int , unsigned),这个函数可以一字节一字节地把整个数组设置为一个指定的值。第1个参数void *表示地址,用于接收数组的起始地址, 第2个参数int 是设置数组每个字节的值。第3个参数是数组的长度(字节数,不是元素个数)。
一直以来我都把第二个参数当成了数组元素的值,结果今天就犯了错误,我在程序里这么写:
结果数组每个元素都变成了257,二进制即为0000 0001 0000 0001