c库函数:strrchr使用demo案例

news2025/2/26 9:25:49

1. strrchr库函数说明

头文件 
<string.h>
   
函数形式
char *strrchr( const char *str, int ch );

功能
 在str所指向的空终止字节串中寻找字符ch的最后出现。
 
参数
str - 指向要分析的空终止字节字符串的指针 
ch - 要搜索的字符 

返回值
 指向 str 中找到的字符的指针,或若找不到这种字符则为空指针。

2.c++代码案例

2.1 文件名:strrchr_lib.cpp
#include <cstring>  //定义了strrchr()
#include <string>   //定义了cpp的类string, 可以使用c_str()
#include <iostream>
using namespace std;

int main(void)
{
    char* p_pos = nullptr;
    string tmp_string = "abc/def/hjk.cpp"; //要使用成员函数c_str()必须为之实例化一个类string对象
    const char* tmp_char = tmp_string.c_str();
    cout << "tmp_string's p_pos: " << tmp_char << endl;
    p_pos = strrchr((char*)tmp_char, '/');
    cout << "/'s p_pos: " << p_pos << endl;
    return 0;
}
2.2 编译用Makefile
TGT := app
OPTION := -I.
SRC = strrchr_lib.cpp

all:$(TGT)
	@echo "Make successfull!"

$(TGT):$(SRC)
	g++ -std=c++11 $(OPTION) $^ -o $@

clean:
    ifneq ( ,$(wildcard *.o))
		@rm *.o
    endif
    ifneq ( ,$(wildcard ${TGT}))
		@rm $(TGT)
    else
		@echo "no fie exist, nothing to do"
    endif

.PHONY: all clean
2.3 结果
xuehy@ubuntu:~/code/lib_study/lib_cpp_and_c$ make
g++ -std=c++11 -I. strrchr_lib.cpp -o app
Make successfull!
xuehy@ubuntu:~/code/lib_study/lib_cpp_and_c$ ./app
tmp_string's p_pos: abc/def/hjk.cpp
/'s p_pos: /hjk.cpp
2.4 模型

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1841771.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Docker安装】Ubuntu系统下部署Docker环境

【Docker安装】Ubuntu系统下部署Docker环境 前言一、本次实践介绍1.1 本次实践规划1.2 本次实践简介二、检查本地环境2.1 检查操作系统版本2.2 检查内核版本2.3 更新软件源三、卸载Docker四、部署Docker环境4.1 安装Docker4.2 检查Docker版本4.3 配置Docker镜像加速4.4 启动Doc…

关于车规级功率器件热可靠性测试的分享

随着中国电动汽车市场的稳步快速发展和各大车企布局新能源的扩散&#xff0c;推动了车规级功率器件的快速增长。新能源汽车行业和消费电子都会用到半导体芯片&#xff0c;但车规级芯片对外部环境要求很高&#xff0c;涉及到的一致性和可靠性均要大于工业级产品要求&#xff0c;…

优化改进YOLOv5算法之Shift-ConvNets,具有大核效应的小卷积核,效果提升明显

目录 1 Shift-ConvNets模块原理 1.1 Decomposition and Combination of Convolution 1.2 Sparse Dependencies of Large Convolution Kernels 1.3 Intermodule Feature Manipulation 2 YOLOv5中加入Shift-ConvNets模块 2.1 common.py文件配置 2.2 yolo.py配置 2.3 创建…

龙讯旷腾PWmat计算vdW异质结中热载流子冷却 | 复刻《Phys. Chem. Chem. Phys 》文献

01 NAMD 背景介绍 在各类光物理与光化学过程当中&#xff0c;均会牵涉到激发态载流子动力学过程&#xff0c;诸如电荷弛豫、复合以及输运等等。光激发或者电子注入将初始的平衡状态打破&#xff0c;所产生的热载流子在其演化进程中&#xff0c;会与原子核产生强烈耦合。此时&a…

Elsevier曝光73篇论文操纵同行评审,涉嫌操纵同行评审和人为引用

近日&#xff0c;全球知名学术出版商爱思唯尔&#xff08;Elsevier&#xff09;旗下期刊《Engineering Analysis with Boundary Elements》对73篇论文发出了关注声明&#xff0c;这些论文涉嫌操纵同行评审和人为引用。去年7月&#xff0c;该期刊前编委Masoud Afrand被指涉嫌论文…

OceanBase v4.2 特性解析:支持并发建表,提升OMS导入效率

背景 OceanBase 4.0版本新增了单日志流架构&#xff0c;使得OBServer单机突破了原有的分区数限制&#xff0c;支持更大数量的分区。 很多业务环境为了处理单机数据量过大的问题&#xff0c;通常采取分库分表的方法&#xff0c;这一方法会导致业务需要创建数十万乃至百万级别的…

电网铁塔安全:输电线路智能螺栓在线监测装置|远程了解螺栓异常情况

电网铁塔安全&#xff1a;输电线路智能螺栓在线监测装置|远程了解螺栓异常情况 在浩渺的天空下&#xff0c;银线如织&#xff0c;纵横交错&#xff0c;那是我们的输电线路&#xff0c;是点亮万家灯火的血脉。然而&#xff0c;这看似坚强的网络&#xff0c;实则也隐藏着许多不为…

新港海岸NCS8801 RGBLVDS转DPEDP,支持4K60HZ,成熟方案大批量出货产品,国产化认证

NCS8801描述&#xff1a; NCS8801S是一种低功耗的RGB/LVDS到显示端口/eDP转换器&#xff0c;专为智能手机、平板电脑、笔记本电脑等移动设备而设计。以支持高清DP/eDP显示器。NCS8801S支持4车道DP/eDP输出&#xff0c;这通常需要以60Hz的帧率支持QXGA&#xff08;2048*1536&am…

数据可视化作业二:中国城市地铁数据可视化

目录 作业要求 一、绘制每个城市站点数量柱状图&#xff08;降序排列&#xff09; 1.1 每个城市站点数量统计 1.1.1 代码展示 1.1.2 统计结果展示 1.2 柱状图绘制 1.2.1 代码实现 1.2.2 绘制结果 二、绘制上海市地铁线路站点数饼状图 2.1 数据处理 2.2 代码实现 2.3…

RabbitMQ详解-06RabbitMQ高级

1. 过期时间TTL 可以对消息设置预期的时间&#xff0c;在这个时间内都可以被消费者接收获取&#xff1b;过了之后消息自动被删除。RabbitMQ可以对消息和队列设置TTL。有以下两种设置方法&#xff1a; 通过队列属性设置&#xff0c;队列中所有消息都有相同的过期时间。对消息进…

STM32学习笔记(六)--引脚重映射详解

STM32F103C8T6引脚定义&#xff1a; 在STM32微控制器中&#xff0c;外设引脚的复用功能&#xff08;Alternate Function&#xff0c;AF&#xff09;有时会出现冲突&#xff0c;例如当USART2_CTS和TIM2_CH1同时需要使用相同的引脚时。此时&#xff0c;可以通过引脚重映射功能&am…

AI播客下载:The Gradient-AI前沿见解

The Gradient 是一个致力于让更多人轻松了解人工智能&#xff0c;并促进人工智能社区内讨论的组织。我们目前开展的项目包括 The Gradient 杂志、The Gradient 播客、The Update 通讯以及 Mastodon 实例 Sigmoid Social。 我们是一个由来自不同机构和公司的研究生、研究人员及…

三十分钟学会RabbitMQ

1、初识MQ 1.1 MQ是什么&#xff1f; MQ(message queue)&#xff0c;从字面意思上看&#xff0c;本质是个队列&#xff0c;FIFO先入先出&#xff0c;只不过队列中存放的内容是message而已&#xff0c;还是一种跨进程的通信机制&#xff0c;用于上下游传递消息。在互联网架构中…

Wills Room Environment Dormitory Room Environment

有126个独特的网格。包括所有展示的资产和优质资产。具有良好的细节水平,并针对Gameready项目进行了优化。 艺术家Jonjo Hemmens创造的环境 如果想填充你的游戏环境或任何类型的虚拟制作级别,这里有一个包,你可以获得并使用它来得到高质量的视觉效果和优化的资产。 下载:​…

Unicorn批量模拟执行爆破实践

实践题目&#xff1a;CFI-CTF 2018 Automated Reversing 代码与附件地址&#xff1a;https://github.com/Airrcat/unicorn_loader 目标附件如&#xff1a; 每份附件的代码大致如下&#xff1a; 简单来说&#xff0c;程序会接收命令行参数并作一个字节的运算后与一固定值的字…

转型技术管理:九大步骤解锁高效管理新境界

文章目录 引言一、寻求反馈二、从员工的角度看待问题三、总览全局四、管理自己的情绪五、赞赏员工的出色工作六、在人前支持员工七、管理自己的职业生涯八、认识到自己也许存在偏见&#xff0c;与不同于自己的人交流九、在工作中建立信任和沟通总结 引言 在快速变化的科技浪潮…

SparkSQL的分布式执行引擎-Thrift服务:学习总结(第七天)

系列文章目录 SparkSQL的分布式执行引擎 1、启动Thrift服务 2、beeline连接Thrift服务 3、开发工具连接Thrift服务 4、控制台编写SQL代码 文章目录 系列文章目录前言一、SparkSQL的分布式执行引擎(了解)1、启动Thrift服务2、beeline连接Thrift服务3、开发工具连接Thrift服务4、…

opencascade AIS_InteractiveContext源码学习相关枚举 AIS_SelectionScheme AIS_StatusOfPick

AIS_SelectionScheme 枚举 AIS_SelectionScheme 设置交互上下文中的选择方案。 枚举值&#xff1a; AIS_SelectionScheme_UNKNOWN 未定义的方案 AIS_SelectionScheme_Replace 清除当前选择并选择检测到的对象 AIS_SelectionScheme_Add 将检测到的对象添加到当前选择 AIS_…

【Kubernetes项目部署】k8s集群+高可用、负载均衡+防火墙

项目架构图 &#xff08;1&#xff09;部署 kubernetes 集群 详见&#xff1a;http://t.csdnimg.cn/RLveS &#xff08;2&#xff09; 在 Kubernetes 环境中&#xff0c;通过yaml文件的方式&#xff0c;创建2个Nginx Pod分别放置在两个不同的节点上&#xff1b; Pod使用hostP…

智慧学习实践系统的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;企业管理&#xff0c;任务管理&#xff0c;公告管理&#xff0c;菜单管理&#xff0c;用户管理&#xff0c;基础数据管理 企业账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;任务…