当前位置: 首页 > 文档资料 > C 标准库 中文版 >

int memcmp(const void *str1, const void *str2, size

优质
小牛编辑
129浏览
2023-12-01

描述 (Description)

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

声明 (Declaration)

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

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

参数 (Parameters)

  • str1 - 这是指向内存块的指针。

  • str2 - 这是指向内存块的指针。

  • n - 这是要比较的字节数。

返回值 (Return Value)

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

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

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

例子 (Example)

以下示例显示了memcmp()函数的用法。

#include <stdio.h>
#include <string.h>
int main () {
   char str1[15];
   char str2[15];
   int ret;
   memcpy(str1, "abcdef", 6);
   memcpy(str2, "ABCDEF", 6);
   ret = memcmp(str1, str2, 5);
   if(ret > 0) {
      printf("str2 is less than str1");
   } else if(ret < 0) {
      printf("str1 is less than str2");
   } else {
      printf("str1 is equal to str2");
   }
   return(0);
}

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

str2 is less than str1