C 语言库函数 - memcmp()
C 语言标准库 <string> 函数 int memcmp(const void str1, const void str2, size_t n)) 把存储区 str1 和存储区 str2 的前 n 个字节进行比较
头文件
#include <string.h>
函数原型
下面是 memcmp() 函数的原型
int memcmp(const void *str1, const void *str2, size_t n)
参数
-
str1:指向内存块的指针
-
str2:指向内存块的指针
-
n:要被比较的字节数
返回值
- 如果返回值 < 0,则表示 str1 小于 str2
- 如果返回值 > 0,则表示 str2 小于 str1
- 如果返回值 = 0,则表示 str1 等于 str2
范例
下面的范例演示了 memcmp() 函数的用法
/** * file: main.c * author: 简单教程(www.twle.cn) * * Copyright © 2015-2065 www.twle.cn. All rights reserved. */ #include <stdio.h> #include <string.h> int main () { char str1[15]; char str2[15]; int ret; memcpy(str1, "abcdef", 6); memcpy(str2, "ABEDEF", 6); ret = memcmp(str1, str2, 5); if(ret > 0) { printf("str2 小于 str1"); } else if(ret < 0) { printf("str1 小于 str2"); } else { printf("str1 等于 str2"); } printf("\n"); return(0); }
编译运行范例,输出结果如下
$ gcc main.c && ./a.out
str2 小于 str1