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;
}
相关推荐
selfsongs14 分钟前
指针、内存管理、现代 C++ 特性
c++
吃着火锅x唱着歌1 小时前
Effective C++ 学习笔记 条款37 绝不重新定义继承而来的缺省参数值
c++·笔记·学习
2401_841495641 小时前
【数据结构】B+树
数据结构·数据库·c++·b+树·概念·结构·操作原理
小保CPP1 小时前
OCR C++ Tesseract按行识别字符
c++·人工智能·ocr·模式识别·光学字符识别
稚南城才子,乌衣巷风流2 小时前
函数:编程中的核心概念
开发语言·前端·javascript
阿米亚波2 小时前
【C++】流式数据输入处理(不完全整理)
开发语言·c++·笔记
大模型码小白3 小时前
JAVA 集合框架进阶:List 与 Set 的深度解析与实战
java·开发语言·人工智能·windows·语言模型·list·ai编程
IT_陈寒3 小时前
为什么我的JavaScript异步代码总是不按顺序执行?
前端·人工智能·后端
索西引擎3 小时前
【React】useState 状态更新机制:批量更新策略与“异步“错觉的深层解析
前端·react.js·前端框架
名字还没想好☜3 小时前
Go 的 time.Ticker 陷阱:定时任务里被忽略的内存泄漏与正确关闭
java·数据库·golang·go·定时器