C语言中:strcmp函数如何使用?
展开全部
原型:extern int strcmp(const char *s1,const char * s2);
用法:#include <string.h>
功能:比较字符串s1和s2。
相关函数:wcscmp
一般形式:strcmp(字符串1,字符串2)
说明:
当s1<s2时,返回值<0
当s1=s2时,返回值=0
当s1>s2时,返回值>0
即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止。如:
"A"<"B" "a">"A" "computer">"compare"
特别注意:strcmp(const char *s1,const char * s2)这里面只能比较字符串,不能比较数字等其他形式的参数。
用法:#include <string.h>
功能:比较字符串s1和s2。
相关函数:wcscmp
一般形式:strcmp(字符串1,字符串2)
说明:
当s1<s2时,返回值<0
当s1=s2时,返回值=0
当s1>s2时,返回值>0
即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止。如:
"A"<"B" "a">"A" "computer">"compare"
特别注意:strcmp(const char *s1,const char * s2)这里面只能比较字符串,不能比较数字等其他形式的参数。
展开全部
#include <stdio.h>
#include <string.h>
int main()
{
char ch1[2] = "a";
char ch2[2] = "k";
int result = strcmp(ch1, ch2);
if( result > 0 )
{
printf("a要大\n");
}
else if( result < 0 )
{
printf("k要大\n");
}
else
{
printf("相等\n");
}
return 0;
}
单个字符的话其实可以直接比较,strcmp是比较字符串的,返回值是他们的差值,如果等于0说明相等。其他可以参考百科或MSDN
#include <string.h>
int main()
{
char ch1[2] = "a";
char ch2[2] = "k";
int result = strcmp(ch1, ch2);
if( result > 0 )
{
printf("a要大\n");
}
else if( result < 0 )
{
printf("k要大\n");
}
else
{
printf("相等\n");
}
return 0;
}
单个字符的话其实可以直接比较,strcmp是比较字符串的,返回值是他们的差值,如果等于0说明相等。其他可以参考百科或MSDN
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
函数原型:extern int strcmp(const char *s1,const char *s2);
函数功能:以ascii码值比较两个字符串的大小,当s1<s2时,返回为负数,当s1=s2时,返回值= 0,当s1>s2时,返回正数。
头文件:#include <string.h>
参数说明:两个比较字符串的首地址指针。
注意事项:strcmp(const char *s1,const char * s2)这里面只能比较字符串,即可用于比较两个字符串常量,或比较数组和字符串常量,不能比较数字等其他形式的参数。
函数功能:以ascii码值比较两个字符串的大小,当s1<s2时,返回为负数,当s1=s2时,返回值= 0,当s1>s2时,返回正数。
头文件:#include <string.h>
参数说明:两个比较字符串的首地址指针。
注意事项:strcmp(const char *s1,const char * s2)这里面只能比较字符串,即可用于比较两个字符串常量,或比较数组和字符串常量,不能比较数字等其他形式的参数。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
就是对两个字符串从左到右逐个字符相比,按ASCII值大小比较,如果出现不同字符或遇到'\0'为止,如果全部字符相等;则认为相等,如果不相等的,按第一个不相等的字符的比较结果为准,
如strmp(str,str),则函数值为0,如果strmp(stra,strb)因为a的askii小于b的,所以函数值为一个负数。
如strmp(str,str),则函数值为0,如果strmp(stra,strb)因为a的askii小于b的,所以函数值为一个负数。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
strcmp简介:
函数原型int strcmp(const char *str1,const char *str2);
其作用为
将str1的各个字母的ASCII码与str2的进行比较。
若str1>str2则返回整数,若str1=str2返回0,否则,返回负数
一般这样调用:
if(strcmp(str1,str2)==0)...
else ...
当然,这是C语言的库函数,它的代码存储在某个库文件中。
在string.h里只是一个声明。
我给你写一下,大概是这样的:
int strcmp(const char *str1,const char *str2)
{
char *str3=str1,*str4=str2;
while(*str3++!=*str4++&&(*str3||*str4))
{
if(*--str3<*--str4)
return -1;
if(*str3>*str4) return 1;
str3++;str4++;
}
return 0;
}
函数原型int strcmp(const char *str1,const char *str2);
其作用为
将str1的各个字母的ASCII码与str2的进行比较。
若str1>str2则返回整数,若str1=str2返回0,否则,返回负数
一般这样调用:
if(strcmp(str1,str2)==0)...
else ...
当然,这是C语言的库函数,它的代码存储在某个库文件中。
在string.h里只是一个声明。
我给你写一下,大概是这样的:
int strcmp(const char *str1,const char *str2)
{
char *str3=str1,*str4=str2;
while(*str3++!=*str4++&&(*str3||*str4))
{
if(*--str3<*--str4)
return -1;
if(*str3>*str4) return 1;
str3++;str4++;
}
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询