bzero.c源码注释

bzero函数的作用是向一个字符串写入某个指定字节的空字符’\0’,一般用于把一个字符串置0。类似memset。函数原型为:


DESCRIPTION
The bzero() function writes len zero bytes to the string b. If len is zero, bzero() does nothing.

源代码:

只有短短的三行,实现的非常简洁。
bzero的介绍中提到,如果指定的字节数为0,那么bzero什么也不做。对于这个条件的判断隐含中for循环当中:如果length变量为0,则length–返回0(而不是-1),那么循环退出,什么也不做。
读懂这一段代码需要了解:

1. for循环的执行过程
2. –和++操作符以及length–和–length的差别
3. *p++的作用(其中包括*运算符和++运算符的优先级,*p++的返回值,指针的递增运算

对于1,大家可以参看”C programming language (K&R C)”这本书,对于2和3,可以参考“Pointers on C”第六章(如果我没记错的话),讲的很透彻,我就不再这里罗嗦了(讲了可能会越说越乱 :-~)。

Leave a Comment