strcmp函数

函数字面理解记忆:strcmp前缀str表示是在<string.h>里的函数,cmp是compare(比较)的缩写,表示两个字符串进行大小比较。

比较原理:两个字符串分别从第一个字符开始比较,一直往后找到不同的字符停止并比较,返回-1或者1;如果都同时到了字符0则表示相同字符串,返回0。

函数的传入值和返回值: (int) strcmp(char* arr,char*brr);

strcmp(arr,brr) 可以看成arr-brr,如果前者大就返回1 arr-brr>0;    后者大返回-1 arr-brr<0; 相同则返回0,arr-brr=0。

函数的自我实现

int my_strcmp(char*arr,char*brr) {
    while (*arr != '\0' || *brr != '\0') {        //当且仅当两个字符串此处字符都是字符0的时候停止,也表                                                                示两者是相同的字符串,所以退出循环直接返回0
        if (*arr != *brr)return *arr <*brr?-1:1;    //判断每次两者字符是否相同,不同就用三目返回-1或1
        ++arr;
        ++brr;                                 //如果这次两个是相同的,都往后移动一位。
    }
    return 0;
}

  • 15
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值