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