- FinCloud
-
字符串比较函数,一般形式为strcmp(字符串1,字符串2)。
比较规则:
对两个字符串自左至右逐个字符相比(按ASCII码值大小比较),直到出现不同的字符或遇到‘ "为止。如果全部字符相同,则认为相等;若出现不相同的字符,则以第一个不相同的字符的比较结果为准。
如果两个字符串都由英文字母组成,则有一个简单的规律:在英文字典中位置在后面的为“大”,还要特别注意:小写字母比大写字母“大”。
返回值:
(1)字符串1=字符串2,返回0
(2)字符串1>字符串2,返回一个正整数
(3)字符串1<字符串2,返回一个负整数。扩展资料:
规则
当s1<s2时,返回为负数;
当s1==s2时,返回值= 0;
当s1>s2时,返回正数。
即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇" "为止。如:
"A"<"B" "a">"A" "computer">"compare"
特别注意:strcmp(const char *s1,const char * s2)这里面只能比较字符串,即可用于比较两个字符串常量,或比较数组和字符串常量,不能比较数字等其他形式的参数。
ANSI标准规定,返回值为正数,负数,0 。而确切数值是依赖不同的C实现的。
Return Value
Returns an integral value indicating the relationship between the strings:
return value<0 the first character that does not match has a lower value inptr1than inptr2
return value=0 the contents of both strings are equal
return value>0 the first character that does not match has a greater value inptr1than inptr2
当两个字符串不相等时,C标准没有规定返回值会是1 或 -1,只规定了正数和负数。有些实现会返回1或-1,但将返回值与1或-1做比较的人,都是不合格的程序员。
有些会把两个字符的ASCII码之差作为比较结果由函数值返回。但无论如何不能以此条依据作为程序中的流程逻辑。
参考资料:百度百科-strcmp
- 我不懂运营
-
首先,要用这个函数,需要预包含头文件<string.h>,其次、这是两个字符串比较函数其原型为:int strcmp(char *str1, char *str2);当str1>str2时,返回一个正数;当str1<str2时,返回一个负数;当str1=str2时,返回0。最后应该注意的是:两个字符串比较时,是按asiic码大小逐个比较的,当发现某一个大或者小时,就停止比较、返回一个值。否则比较到最后一个字母。
- 北境漫步
-
此函数用于比较两个字符串是否相同。返回值为0,表示两个字符串是相同的。
下面是msdn中的例子
char string1[] = "The quick brown dog jumps over the lazy fox";
char string2[] = "The QUICK brown dog jumps over the lazy fox";
int result = strcmp( string1, string2 );
if ( result == 0 )
{
// string1与string2相同
}
- wpBeta
-
字符串对比函数,
定义两个字符串,
char s1[]="ndajsj",s2[]="sbnu";
用该函数对比,strcmp(s1,s2);当s1,s2完全一样时返回值为零,其他不为零,详细参照书籍或者百度百科,
也可以这样用
strcmp("snada","dnd");是两个字符串直接对比,
- 大鱼炖火锅
-
strcmp(s1,s2)是字符串比较函数,比较规则是俩个字符串自左向右逐个字符相比(按ASCII码值大小),以第一个不相同的大小作为比较结果。
当s1等于s2时,返回0;
当s1大于s2时,为正整数;
当s1小于s2时,为负整数。
- 贝贝
-
int
strcmp(const
char
*s1,const
char
*
s2);
所在头文件:string.h
功能:比较字符串s1和s2。
一般形式:strcmp(字符串1,字符串2)
说明:
当s1<s2时,返回值<0
当s1==s2时,返回值=0
当s1>s2时,返回值>0
即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇" "为止。
- 可可
-
strcmp(char *s1,char * s2);
当s1<s2时,返回值<0
当s1=s2时,返回值=0
当s1>s2时,返回值>0
- 可乐
-
strcmp的作用是比较字符串1和字符串2的长度大小的
例如:strcmp(str1,str2);
strcmp("sdkfj″,″Kfnksdj″);
比较的结果由函数值带回
(1)
如果字符串1=字符串2,函数值为0。
(2)
如果字符串1>字符串2,函数值为一正整数。
(3)
如果字符串1<字符串2,函数值为一负整数。
- LocCloud
-
一般用在if判断里面。例如if(srtcmp(s1,s2))==0;
- 康康map
-
字符串比较,把2个字符串当它的参数即可
- CarieVinne
-
* 回复内容中包含的链接未经审核,可能存在风险,暂不予完整展示!请参考http://baike.b***.com/view/1026924.htm
- 皮皮
-
函数简介
原型:extern int strcmp(const char *s1,const char * s2);
所在头文件:string.h
功能:比较字符串s1和s2。
一般形式:strcmp(字符串1,字符串2)
说明:
当s1<s2时,返回为负数 注意不是-1
当s1==s2时,返回值= 0
当s1>s2时,返回正数 注意不是1
注:c++ 中
当s1<s2时,返回为负数 注意不是-1
当s1==s2时,返回值等于0
当s1>s2时,返回正数 注意不是1
即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇" "为止。如:
"A""A" "computer">"compare"
特别注意:strcmp(const char *s1,const char * s2)这里面只能比较字符串,不能比较数字等其他形式的参数。
一例实现代码:
#include
#include
#undef strcmp
int strcmp (p1, p2)
{
const char *p1;
const char *p2;
{
register const unsigned char *s1 = (const unsigned char *) p1;
register const unsigned char *s2 = (const unsigned char *) p2;
unsigned reg_char c1, c2;
do{
c1 = (unsigned char) *s1++;
c2 = (unsigned char) *s2++;
if (c1 == " ")
return c1 - c2;
}while (c1 == c2);
return c1 - c2;
}
libc_hidden_builtin_def (strcmp)
c的实现方式:
int mystrcmp(const char*s1,const char*s2){
while(*s1!=0&&*s2!=0&&*s1==*s2){
s1++;
s2++;
}
return *s1-*s2;
}
2函数源码
int strcmp(const char *str1, const char *str2){ while (*str1==*str2) { if(*str1==" ") return 0; str1++; str2++; } return *str1-*str2;}
应用举例举例1
(在VC6.0中运行通过)
#include
#include
void main()
{
char string[20];
char str[3][20];
int i;
for(i=0;i<3;i++)
gets(str[i]);
if(strcmp(str[0],str[1])>0)
strcpy(string,str[0]);
else
strcpy(string,str[1]);
if(strcmp(str[2],string)>0)
strcpy(string,str[2]);
printf(" The largest string is %s ",string);
}
说明
intstrcmp( string$str1 , string$str2 )
注意该比较区分大小写。
参数
str1第一个字符串。
str2第二个字符串。
返回值
如果 str1小于 str2,返回负数;如果 str1大于 str2,返回正数;二者相等则返回 0。(相等时返回0)
- tt白
-
字符串比较函数,一般形式为strcmp(字符串1,字符串2)。
比较规则:
对两个字符串自左至右逐个字符相比(按ASCII码值大小比较),直到出现不同的字符或遇到‘ "为止。如果全部字符相同,则认为相等;若出现不相同的字符,则以第一个不相同的字符的比较结果为准。
如果两个字符串都由英文字母组成,则有一个简单的规律:在英文字典中位置在后面的为“大”,还要特别注意:小写字母比大写字母“大”。
返回值:
(1)字符串1=字符串2,返回0
(2)字符串1>字符串2,返回一个正整数
(3)字符串1<字符串2,返回一个负整数。
- 西柚不是西游
-
摆渡一下
- 左迁
-
看课本或者百度。。。。。。