strcmp对比字符串
用的时候需要头文件#include<stringh>
#include<stdioh>
#include<stdlibh>
#include<stringh>
main()
{
char a[10]="Hello!";
char b[10];
strcpy(b,a);//把a copy给b
puts(b);//打印出b
system("pause");
}
strcmp(a,b)用来对比字符串长度的,比如
#include<stdioh>
#include<stdlibh>
#include<stringh>
main()
{
char a[10]="Hello!";
char b[20]="Hello word!";
if(strcmp(b,a)<0)//小于0的时候b对a长
puts(b);//打印出b
system("pause");
}strcmp是字符串比较函数,作用是比较字符串1和字符串2
如:strcmp(str1,str2);
strcmp("china","korea");
比较的结果由函数带回。
(1)如果字符串1=字符串2,函数值为0。
(2)如果字符串1〉字符串2,函数值为一正整数
(3)如果字符串1<字符串2,函数值为一负整数
具体程序的例子:
#include
<stdioh>
#include
<stdlibh>
#include<stringh>
void
main()
{
char
a[50],b[50];
printf("请输入字符串a:
\n");
gets(a);
printf("请输入字符串b:
\n");
gets(b);
if(strcmp(a,b)>0)
printf("a>b");
else
if(strcmp(a,b)<0)
printf("a<b");
else
if(strcmp(a,b)==0)
printf("a==b");
system("pause");
}strcat
函数是把两个字符串做连接,并返回连接后的字符串。
strcat(a,b)="aab"
所以,即求
strcmp("aab","ab")
的值,
strcmp
函数只有3种值,
当前面的字符串大于后面的字符串时,返回
1
当前面的字符串小于后面的字符串时,返回
-1
当前面的字符串等于后面的字符串时,返回
0
"aab" 和
"ab",第一个字母是相等的,第二个字母
,a比b
小,
所以,最终strcmp(strcat(a,b),b)的值是:
-1
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)