C 库函数 - memcmp()

描述

C 库函数 int memcmp(const void str1, const void str2, size_t n)) 把存储区 str1 和存储区 str2 的前 n 个字节进行比较。

声明

下面是 memcmp() 函数的声明。

  1. int memcmp(const void *str1, const void *str2, size_t n)

参数

  • str1 — 指向内存块的指针。
  • str2 — 指向内存块的指针。
  • n — 要被比较的字节数。

返回值

  • 如果返回值 < 0,则表示 str1 小于 str2。
  • 如果返回值 > 0,则表示 str2 小于 str1。
  • 如果返回值 = 0,则表示 str1 等于 str2。

实例

下面的实例演示了 memcmp() 函数的用法。

  1. #include <stdio.h>
  2. #include <string.h>
  3. int main ()
  4. {
  5. char str1[15];
  6. char str2[15];
  7. int ret;
  8. memcpy(str1, "abcdef", 6);
  9. memcpy(str2, "ABCDEF", 6);
  10. ret = memcmp(str1, str2, 5);
  11. if(ret > 0)
  12. {
  13. printf("str2 小于 str1");
  14. }
  15. else if(ret < 0)
  16. {
  17. printf("str1 小于 str2");
  18. }
  19. else
  20. {
  21. printf("str1 等于 str2");
  22. }
  23. return(0);
  24. }

让我们编译并运行上面的程序,这将产生以下结果:

  1. str2 小于 str1