bcopy、bzero和bcmp是传统BSD的函数,属于POSIX标准;mem*是C90(以及C99)标准的C函数。区别在于,如果你打算把程序弄到一个符合C90/C99,但是不符合POSIX标准的平台时,后者比较有优势。
NetBSD的代码中有很多地方使用mem*(他们更偏爱mem*,以利于移植),即使内核也是如此,而FreeBSD的内核中则尽量避免使用(希望尽可能避免在内核中出现较多的C函数)。如果你提交代码的话需要注意这些约定。
在memset和bzero初始化数据间,我很多时候选择bzero, memset的一个缺点是第二个参数和第三个参数需要记忆,需要记住哪个是值和哪个是大小(如果不想查手册的话), 不可以弄错。
:-)
分享到:
相关推荐
在C语言中,`strcpy`和`memcpy`都是用于数据复制的函数,但它们有着不同的特性和使用场景。本文将详细介绍这两个函数的区别及其适用范围。 首先,`strcpy`是C语言标准库`string.h`中定义的一个函数,专门用于字符串...
【WINIDE函数使用手册】是针对...然而,需要注意的是,虽然这些函数在某些环境中很常见,但在C标准库中并未定义,因此在某些编译器或平台上可能不可用,此时可以使用标准库中的`memcmp`、`memcpy`和`memset`作为替代。
bcmp bcopy bzero memccpy memchr memcmp memcpy memicmp memmove memset movmem setmem stpcpy strcat strchr strcmp strcmpi strcpy strcspn strdup stricmp strlen strlwr strncat ...
bcmp bcopy bzero memccpy memchr memcmp memcpy memicmp memmove memset movmem setmem stpcpy strcat strchr strcmp strcmpi strcpy strcspn strdup stricmp strlen strlwr strncat ...
bcmp bcopy bzero memccpy memchr memcmp memcpy memicmp memmove memset movmem setmem stpcpy strcat strchr strcmp strcmpi strcpy strcspn strdup stricmp strlen strlwr strncat ...
bcmp bcopy bzero memccpy memchr memcmp memcpy memicmp memmove memset movmem setmem stpcpy strcat strchr strcmp strcmpi strcpy strcspn strdup stricmp strlen strlwr strncat ...
bcmp bcopy bzero memccpy memchr memcmp memcpy memicmp memmove memset movmem setmem stpcpy strcat strchr strcmp strcmpi strcpy strcspn strdup stricmp strlen strlwr strncat ...
memcmp函数的功能与bcmp函数相同,但它提供了更多的功能和flexibility。 bcopy函数 bcopy函数是用来拷贝内存内容的。它可以将src所指的内存内容前n个字节拷贝到dest所指的地址上。函数原型为: void bcopy ( ...
### 字符串操作在VC++中的应用 在VC++中,字符串操作...然而,需要注意的是,随着C++标准库的发展,某些函数如`bcopy`和`bzero`已经被认为过时,建议使用`memcpy`和`memset`等现代替代品,以提高代码的效率和兼容性。
本文将详细解析一些常见的VC字符串函数,包括`bcmp`、`bcopy`、`bzero`、`index`、`memccpy`以及`memchr`,这些函数主要用于比较、复制、清除内存和查找字符串中的特定字符。 1. **bcmp**: `bcmp`函数用于比较两...
例如,在处理大量文本数据时,bcmp()可以用来比较两个字符串是否相同,bcopy()和memccpy()用于高效地复制内存块,bzero()则用于初始化内存区域,确保数据的安全性,而index()等函数则帮助开发者快速定位字符串中的...
在`vc字符串大全.pdf`中,涉及了一些重要的C语言字符串和内存操作函数,包括`bcmp`、`bcopy`、`bzero`、`index`、`memccpy`和`memchr`。 1. **bcmp**:这是一个用于比较两个内存区域的函数,它比较两个指针`s1`和`...
本文主要介绍三个非标准但常在某些环境中使用的函数:bcopy()、bzero()和bcmp(),它们分别用于内存复制、清零和比较。 1. **bcopy()函数**: bcopy()函数主要用于复制内存块,包括字符串。它的原型为`void bcopy...
本文将详细介绍一些与`string`相关的函数,这些函数在C语言的标准库`<string.h>`中定义,包括`bcmp`、`bcopy`、`bzero`、`index`、`memccpy`以及`memchr`。 1. **bcmp**:这个函数用于比较两个内存区域的内容。`...
本篇文章将对一些重要的C++字符串操作函数进行详细讲解,包括bcmp、bcopy、bzero、index、memccpy和memchr等,这些都是C语言标准库`<string.h>`中的一部分。 首先,`bcmp`函数用于比较两个内存区域的内容。它接受三...
这里主要介绍了几个与字符串操作相关的函数,包括`bcmp`、`bcopy`、`bzero`、`index`、`memccpy`以及`memchr`。这些函数虽然不是C++标准库中的成员,但在一些老版本的系统或特定环境下被广泛使用。下面对这些函数...
- `bcmp()`函数用于比较由`s1`和`s2`所指向的内存区间中的前`n`个字节。 - 如果参数`n`为0,则函数返回0。 - 当`s1`和`s2`所指的内存内容完全相同时返回0值,否则返回非零值。 - **返回值**: - 如果`s1`和`s2`所...
虽然它们在早期版本的 C 语言中被广泛使用,但现在更推荐使用如 `memcpy()`、`memset()` 等函数来替代 `bcopy()` 和 `bzero()`,因为后者已经被认为是非标准的或已被废弃。此外,了解如何使用这些函数对于理解 C ...
2. **bcopy**:这个函数与`memcpy`类似,用于从一个内存区域拷贝数据到另一个区域。`bcopy(const void *src, void *dest, int n)`,它将src指针指向的数据拷贝n个字节到dest指针所指的位置。但是,bcopy的参数顺序与...
注意,该函数已经过时,建议使用 `memcmp` 函数取代。 bcopy函数 bcopy 函数用于拷贝内存内容,函数原型为 `void bcopy(const void *src, void *dest, int n);`。该函数将 `src` 所指的内存内容前 `n` 个字节拷贝...