memcmp函数使用
时间: 2023-12-02 16:04:44 浏览: 82
`memcmp` 函数是用于比较内存块的函数,其声明如下:
```c
#include <string.h>
int memcmp(const void *s1, const void *s2, size_t n);
```
`memcmp` 函数的作用是将两个内存块进行比较,返回值有以下三种情况:
- 如果 `s1` 和 `s2` 的前 `n` 个字节完全相同,则返回值为 0。
- 如果 `s1` 和 `s2` 的前 `n` 个字节中有任意一个字节不同,则返回值为 `s1` 和 `s2` 第一个不同字节的差值。
- 如果 `n` 为 0,则返回值为 0。
下面是一个使用 `memcmp` 函数的例子,比较两个字符串是否相等:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "Hello World!";
char str2[] = "Hello World!";
if (memcmp(str1, str2, strlen(str1)) == 0) {
printf("The two strings are equal.\n");
} else {
printf("The two strings are not equal.\n");
}
return 0;
}
```
在这个例子中,我们使用了 `memcmp` 函数比较了两个字符串 `str1` 和 `str2` 是否相等。由于这两个字符串完全相同,所以输出了 `"The two strings are equal."`。
阅读全文