How to use memset in C?
memset
的作用:
The memset() function fills the first n bytes of the memory area pointed to by s with the constant byte c.
考虑下面两段代码:
代码1:
![image-20211125195730595](https://raw.githubusercontent.com/DavidZyy/PicBed/master/img/image-20211125195730595.png)
代码2:
![image-20211125195848161](https://raw.githubusercontent.com/DavidZyy/PicBed/master/img/image-20211125195848161.png)
它们的输出一样吗?
前者会输出100个1684300900,而后者会输出100个100,为什么?
因为memset
一次把1个字节设置为100,而char
刚好是1个字节,而int
是4个字节。所以设置为二进制的
1 | 0110 0100 0110 0100 0110 0100 0110 0100 |
而十进制正是1684300900,其中二进制的0110 0100
转化为十进制是100。