函数原型:extern int memcmp(void *str1, void *str2, unsigned int n)
参数说明:str1和str2为指定作比较的字符串,比较两个字符串的前n个字节。
所在库名:#include
函数功能:比较字符串str1和str2在内存区域中的的前n个字节是否相同。
返回说明:当str1str12时,返回值>0。
其它说明:暂时无。
实例:
#include
<
string
.h
>
#include
<
stdio.h
>
int
main()
{
char*str1="I'm sky2098,welcome to my website!";
char*str2="I'm sky2098,please do not call me sky2098!";
intinttemp;
inttemp=memcmp(str1,str2,strlen("I'm sky2098,"));//比较str1和str2在内存区中前strlen("I'm sky2098,")个字节是否相等if(inttemp==0)
{
printf("str1 and str2 has n bytes which are the same as each other!/n");
}return0;
}
在VC++ 6.0 编译运行:
尤其注意了,memcmp函数实现的是字节的比较,而不是字符的比较。
函数原型:extern int memicmp(void *str1, void *str2, unsigned int count)
参数说明:str1和str2为指定作比较的字符串,比较两个字符串的前count个字节,不区分大小写。
所在库名:#include
函数功能:比较字符串str1和str2在内存区域中的的前count个字节是否相同。
返回说明:当str1str12时,返回值>0。
其它说明:暂时无。
实例:
#include
<
string
.h
>
#include
<
stdio.h
>
int
main()
{
char*str1="I'm sky2098,welcome to my website!"; //两个字符串含义相同,但是大小写不同
char*str2="I'm SKY2098,WELCOME TO MY website!";
intinttemp;
inttemp=memicmp(str1,str2,strlen("I'm sky2098,welcome to my website!"));//比较str1和str2在内存区中前strlen("I'm sky2098,welcome to my website!")个字节是否相等if(inttemp==0)
{
printf("str1 and str2 has n bytes which are the same as each other!");
}return0;
}
在VC++ 6.0 编译运行:
memicmp函数在比较的时候是不区分字母大小写的。