C++ 中string 对象比较

更多关于编程语言, 数据库,算法等精品内容, 请访问  我的个人博客  huqijun.org

-------------------------------------------------------------------------------------------------------------

 

C++中, 关系操作符在比较两个string 对象时, 采用了大小写敏感的字典排序策略

1.  如果连string 对象长度(size)不同, 且短的string 对象和长的string 对象的前面部分相匹配,则短的string 对象小于长的string 对象;

2.  如果两个string 对象的字符不同, 则比较第一个不匹配的字符。

 

其实上面规则可以统一为: 比较第一个不相同的字符,谁的ASCII 值大,则这个string 就大

 

例如:

string A = "hello";

string B = "hello world";

string C ="Hiya";

 

比较A和B, 第一个不相同的字符A是结束符,即ASCII 0, B是空格,即 ASCII 20,  所以认为 A < B ;

比较B和C, 第一个不同的字符B是e , C是i , 所有认为B< C

所有上面三个string对象的关系是 A< B < C;

 

 

附:

ASCII码值:http://baike.baidu.com/link?url=8YKzNus8c-3evXnlioYhyVezwUcGFOhnUmueJHyyt9f2AjnA-oyfuR2UsigQU325

 

更多关于编程语言, 数据库,算法等精品内容, 请访问  我的个人博客  huqijun.org

个人原创内容, 转载请注明来源!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值