您的位置:首页 > 其它

C has memset(), the Berkeley UNIX C library has bzero()

2014-03-12 20:07 204 查看
原型:extern void bzero(void *s, int n);

参数说明:s 要置零的数据的起始地址; n 要置零的数据字节个数。bzero无返回值

用法:#include <string.h>

功能:置字节字符串s的前n个字节为零且包括‘\0’。

说明:bzero无返回值,并且使用string.h头文件,string.h曾经是posix标准的一部分,但是在POSIX.1-2001标准里面,这些函数被标记为了遗留函数而不推荐使用。在POSIX.1-2008标准里已经没有这些函数了。推荐使用memset替代bzero。

[b]bzero()和memset()

[/b]今天用到一个字符数组初始化函数,bzero(),因为比较生疏,于是在查本地的一个C/C++函数库的时候并未见此函数,于是便觉得自己拥有的CHM版的库函数软件包有点山寨了,可是当自己调试程序的时候却发现此函数始终通不过编译。被逼上网查它们的区别,得答案如下:

C has memset(), the Berkeley UNIX C library has
bzero
(). They are not identical, and
bzero
() pre dates memset() but is not widely available (since it's not part of standard C).
在LINUX平台上是支持bzero的,但是其并不在ANSI C中定义,也就是不属于C的库函数.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: