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;
}
相关推荐
很晚很晚了3 小时前
纯前端转全栈 Day 1:我从第一个 NestJS 接口开始
前端
Lee川4 小时前
从零解剖一个 AI Agent Tool是如何实现的
前端·人工智能·后端
wangruofeng5 小时前
Playwright 深度调研:为什么它成了浏览器自动化的新底座
前端·测试
2401_833269305 小时前
Java网络编程入门
java·开发语言
金銀銅鐵6 小时前
[Java] 如何将 Lambda 表达式对应的类保存到 class 文件中?
java·后端
青瓦梦滋6 小时前
C++的IO流与STL的空间配置器
开发语言·c++
それども6 小时前
Gradle 构建疑难杂症 Could not find netty-transport-native-epoll-linux-aarch_64.ja
java·服务器·gradle·maven
正儿八经的少年7 小时前
application.yml 系列配置文件作用与区别
java·配置文件
李白的天不白7 小时前
SSR服务端渲染
前端
鱼很腾apoc7 小时前
【学习篇】第20期 超详解 C++ 多态:从语法规则到底层原理
java·c语言·开发语言·c++·学习·算法·青少年编程