最近做项目需要用到字符串比较,所以就学习了一下memcpy函数,在这里做个标记

函数原型

在linux 下执行一下命令查看其函数原型;

man

memcmp函数使用详解_linux


从这里可以得到函数原型为如下:

#include<string.h>
int memcmp(const void *s1,const void *s2,size_t n);

功能描述

memcmp()函数比较存储区s1和s2的前n个字节(每个字节均解释为无符号字符)。

  • 如果返回值小于0 , 则表示s1小于s2
  • 如果返回值大于0,则表示s1大于s2
  • 如果返回值等于0.则表示s1等于s2

例子

#include<stdio.h>
#include<stdlib.h>
#include<string.h>


int main(int argc,char* argv[])
{
char *wakebuff[2]={"小爱同学你好","你好小爱同学"};
char *exitbuff[3]={"退出系统","退出程序","退出"};
char *result = "你好小爱同学";
printf("%s\n",wakebuff[1]);
int res = memcmp(wakebuff[1],result,strlen(result));
printf("res is = %d len= %d\n",res,strlen(result));
if(res == 0)
{
printf("compared sucessful\n\n");
}else
{
printf("compared fail\n\n");
}
return 0;
}