lstrcmp 比较 A 和 a

lstrcmp 比较 A 和 a

lstrcmp ,用到头文件,#include <windows.h>
WIN API提供的比较字符串函数,区分大小写。
先比较字母顺序,此时由于大小写不影响,
比如
printf("%d", lstrcmpi(“a”, “B”));
printf("%d", lstrcmpi(“A”, “B”));
printf("%d", lstrcmpi(“a”, “b”));
printf("%d", lstrcmpi(“a”, “B”));
结果都是一样的,由于a在b前面,结果都是-1,也就是a<b
如果字母顺序一样,比较大小写。
(具体字符串比较更复杂一点,这里就简化一下,注重字母部分)
百度百科说"A" < “a” < “B” < “b”
但实际上运行代码
printf("%d", lstrcmp(“A”, “a”));
结果是1,说明"A" > “a”
(不区分大小写的lstrcmpi,其结果是0)
如果降序排列多行字符串,确实需要"A" > “a” 才能保证先小写后大写,类似这样:
a
A
hello
HELLO
zzz123

所以为什么网上翻出来都说"A" < “a” ,但实际上运行出来结果却是1,两者存在冲突,没搞懂。
虽然不影响使用,但是容易被误导。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值