strcmp和stricmp、strcmpi三者之间的区别(C++)

#include <string.h>

#include <stdio.h>

原型:extern int strcmp(const void *s1, const void *s2);

用法:#include <string.h>

功能:比较字符串s1和s2是否相同,区分大小写。

说明:如果s1=s2则返回零,否则返回非零值。

原型:extern int stricmp(char *s1,char * s2);

用法:#include <string.h>

功能:比较字符串s1和s2,但不区分字母的大小写。

说明:strcmpi是到stricmp的宏定义,实际未提供此函数。

当s1<s2时,返回值<0

当s1=s2时,返回值=0

当s1>s2时,返回值>0

//举例:

void main()

{

char *str1="I am OldWolf";

char *str2="I am Oldwolf";

int cmp;

printf("原字符串分别为:n%sn%snn",str1,str2);

cmp=strcmp(str1,str2);

if (cmp!=0)

printf("strcmp比较字符串不相同!n");

else

printf("strcmp比较字符串相同!n");

cmp=stricmp(str1,str2);

if (cmp!=0)

printf("stricmp比较字符串不相同!n");

else

printf("stricmp比较字符串相同!n");

cmp=strcmpi(str1,str2);

if (cmp!=0)

printf("strcmpi比较字符串不相同!n");

else

printf("strcmpi比较字符串相同!n");

}

时间: 2024-10-18 06:46:59

strcmp和stricmp、strcmpi三者之间的区别(C++)的相关文章

外发外协外包三者之间的区别与联系

1.应当贯彻顾客为中心原则,通过建立体系来控制过程,确保产品质量.不要化精力在符合标准要求上.如果您 的目标.产品的要求不切合顾客要求的话,就是符合了ISO 9001标准要求,不能满足顾客要求的,符合顾客要求了,顾客满意了,不注意质量成本,经济效益,也就不一定能赚到钱的. 2.7.4条采购要求是,如果您从质量管理体系外得到各种影响产品要求符合性的资源(过程也作为一种资源)的话,就必须对这些产品或者活动(也就是过程) 加以控制的."采购"英文是purchasing,"外包过程&

[转]ExtJs基础--Html DOM、Ext Element及Component三者之间的区别

要学习及应用好Ext框架,必须需要理解Html DOM.Ext Element及Component三者之间的区别. 每一个HTML页面都有一个层次分明的DOM树模型,浏览器中的所有内容都有相应的DOM对象,动态改变页面的内容,正是通过使用脚本语言来操作DOM对象实现.(通常使用getElementById/Ext.getDOM获得DOM对象) 仅仅有DOM是不够的,比如要把页面中的某一个节点移到其它位置,要给某一个节点添加阴影效果,要隐藏或显示某一个节点等,我们都需要通过几句 javascrip

sql表连接left join,right join,inner join三者之间的区别

sql表连接left join,right join,inner join区别 left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 (以左表数据为基准,不足补为NULL)right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录(以右表数据为基准,不足补为NULL)inner join(等值连接) 只返回两个表中联结字段相等的行(条件on之相等的数据) 举例如下: ---------------------------------------

你知道URL、URI和URN三者之间的区别吗

这是一个经典的技术争论,许多人都会自问:URL.URI,很可能还有URN,它们之间的区别是什么.虽然,现在我们简单地把 URN 和 URL 都看做 URI,但严格来说URI可以进一步划分为URL.URN或者这两者的组合,所以了解这三者之间的区别将会非常有趣并让人受益匪浅.如果你恰好在某个地方碰到了这些东西,那么至少应该知道它们的含义. 我认为,尽管对一般人来说,不了解这三个缩略词之间的技术差异以及它们各自的含义并不是什么问题.但是,如果你作为一个计算机科学家.一个Web开发者.一个系统管理员,或

iOS中NSNotification、delegate、KVO三者之间的区别与联系?

iOS中NSNotification.delegate.KVO三者之间的区别与联系? delegate.notification和KVO他们的功能比较类似,那么在实际的编程中,如何选择这些方式呢? 在开发ios应用的时候,我们会经常遇到一个常见的问题:在不过分耦合的前提下,controllers间怎么进行通信.在IOS应用不断的出现三种模式来实现这种通信: 1.委托delegation: 2.通知中心Notification Center: 3.键值观察key value observing,K

维基百科上—数据仓库、数据挖掘、OLAP三者之间的区别

数据仓库可以作为数据挖掘和OLAP等分析工具的资料来源,由于存放于数据仓库中的资料,必需经过筛选与转换,因此可以避免分析工具使用错误的资料,而得到不正确的分析结果. 数据挖掘和OLAP同为分析工具,其差别在于OLAP提供用户一便利的多维度观点和方法,以有效率的对数据进行复杂的查询动作,其预设查询条件由用户预先设定,而数据挖掘,则能由资讯系统主动发掘资料来源中,未曾被查觉的隐藏资讯,和透过用户的认知以产生知识. 数据挖掘(Data Mining)技术是经由自动或半自动的方法探勘及分析大量的资料,以

keydown,keypress,keyup三者之间的区别

最近看了Javascript高级教程中对过滤输入的介绍,想实现比如电话号码中不能包好非数值的字符,而相应文本中插入字符的操作是keypress事件,所以就想通过阻止这个事件的默认事件行为来阻止这个事件的默认行为来屏蔽此类字符,但是屏蔽之后所有的安检操作都会被屏蔽,文本框会变成可读的.如果只想屏蔽特定的字符,需要检测keypress事件对应的字符编码,然后决定如何响应. 但是我在利用keypree事件的时候,完全搞蒙了.因为前面看了keydown.keypress.keyup事件,它们到底怎么用呢

.NET、C#和ASP.NET三者之间的区别 [转载]

经常有同学会在.NET.C#和ASP.NET这三者之间区别不清楚,到底它们之间有什么联系呢?在这里我给大家归纳如下: 1..NET是一个平台,一个抽象的平台的概念. .NET平台其本身实现的方式其实还是库,抽象层面上来看是一个平台. 本人理解的.NET核心就是.NET Framwork. .NET Framework包括两个关键组成元素: a.Common Language Runtime,公共语言运行时(CLR)-提供内在管理,代码安全性检测等功能 b..NET Framework Class

socket,tcp,http三者之间的区别和原理

http.TCP/IP协议与socket之间的区别下面的图表试图显示不同的TCP/IP和其他的协议在最初OSI模型中的位置: 7 应用层 例如HTTP.SMTP.SNMP.FTP.Telnet.SIP.SSH.NFS.RTSP.XMPP.Whois.ENRP 6 表示层 例如XDR.ASN.1.SMB.AFP.NCP 5 会话层 例如ASAP.TLS.SSH.ISO 8327 / CCITT X.225.RPC.NetBIOS.ASP.Winsock.BSD sockets 4 传输层 例如TC