C++常用库函数——strcmp、strchr

1、strcmp:比较两个字符串的值是否相等

例如

复制代码
    char a1[6] = "AbDeG",
        *s1 = a1;
    char a2[6] = "AbdEg",
        * s2 = a2;
    s1 += 2;
    s2 += 2;
    printf("%d \n", strcmp(s1, s2));
    return(0);

s1指向a1,s2指向a2,strcmp表示比较s1和s2是否相等,返回值是-1,输出-1

2、strchr:字符串查找字符,返回值是地址

strchr(str, ch):在参数 str 所指向的字符串中搜索第一次出现字符 ch(一个无符号字符)的位置,返回str+i,其中 i 是字符 c 在字符串 str 中的索引,从 0 开始计数。如果在字符串 str 中没有找到字符 c,那么返回的指针就是 NULL,也就是 0。

例如

复制代码
int strchn(char* str, char ch)
{
    return strchr(str, ch) - str + 1;
}
int main()
{
    char str[] = "helloworld";
    char ch = 'w';
    printf("%d\n", strchn(str, ch));
    return 0;
}
相关推荐
小蒜学长7 分钟前
基于SpringBoot的公寓报修管理系统的设计与实现(代码+数据库+LW)
java·spring boot·后端·公寓报修管理系统·多角色协同
for_ever_love__15 分钟前
MySQL 主从复制讲透:binlog 原理、搭建步骤与读写分离
java·数据库·mysql·binlog·读写分离·原理·主从复制
小π军3 小时前
操作系统面试题
java·linux·服务器
倔强的石头1063 小时前
应用账号最小权限实践:读写账号、报表账号、运维账号分层
java·运维·开发语言
NeilYuen3 小时前
【C++】STL源码仿写(二):vector
开发语言·c++
Shaoshing3 小时前
ThreadLocal
java·jvm·threadlocal
用户033307413953 小时前
TypeScript using 与 AsyncDisposableStack:在真实服务端代码中协调多资源清理
前端
写后端的胖头鱼3 小时前
一文详解CAS
java·jvm·spring·cas·乐观锁·自旋
daisychey4 小时前
用 Playwright 做多平台内容分发,我踩过的 8 个坑
前端