C/C++函数,比较两个字符串
设这两个字符串为str1,str2,
若str1==str2,则返回零;
若str1<str2,则返回负数;
若str1>str2,则返回正数。
matlab中函数,strcmp(s1,因曲合玉阶权s2) 判断两个字符串来自s1和s2是否相同,相同返回true ,不同返回fa径黑教分关率杆解易lse
- 中文名 strcmp
- 外文名 strcmp
- 类别 库函数
- 功能 比较字符串s1和s2
- 头文件 string.h
说明
规则
当s1<s2时,返回为负数;
当s1==s2时,返回值= 0;
当s1>s2时,返回正数。
即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\乐吸见赶0'为止。如:
"A"<"B" "a">"A" "c攻乡电烟职哥omputer">"compare"
特别注意:strcm转钱板p(const ch来自ar *s1,const char * s2)这里面只能比较字符串,即可用于比较两个字符串常量,或比较数组和字符串360百科常量,不能比较数字等其他形式的极溶班限推财参数。
ANSI标准规定,兵磁氢希益剂玉返回值为正数,负数,0 。而确切数值是依赖不同的C实现的。
Return Va超每掌术兵列想点等构lue
Returns an integral value indicati坐宣算定烧请杆它ng the relationship between the strings:
return v领庆理alue<0 the fi快rst character that does not match has a lower value inptr1than inptr2
return value=0 the contents of both strings a呀改何re 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码之差作为比较结但棉众孔之铁很一果由函数值返回。但无论如何不能以此条依据作为程序中的流程逻辑。
源码
应用举例1
(在VC6.0中运行通过)
应用举例2
(TC中运行通过)
使用
s兴晚稳省推并议评trcmp - 二进制先观段儿企批安全字符串比较
说明
注意该比较区分大小写。
参数
str1第一个字符串。
str2第二个字符串。
返回值
如果 str1小于 str2,返回负数;如果 str1大于 str2,返回正数;二者相等则返回 0。(空盐送相等时返回0)
示例:
strcasecmp - 二进制安全比较字符串(不区分大小写)
- str1
- 第一个字符串。
- str2
- 第二个字符来自串。
返回值: 如果 str1 小于 str2 返回 < 0; 如果 str1 大于 str2 返回 > 0;如果两者相等,返回 0。
示例 :