具体代码详见我上传的资源:
https://download.youkuaiyun.com/download/skyksksksksks/87473688
strstr这个C语言函数,相信大多数人都是烂熟于心了。
但是你会发现,其只能正向查找指定字符串,
如果是需要逆向查找指定字符串,那就有心无力了。
并且如果是很长的字符串呢,比如直接从文件读取的字符串,
长度也不确定,那怎么办呢?
要知道C++可不像别的语言会自动管理内存,内存的申请和释放都得自己手动操控的,
并且为了避免访问内存越界,还必须精确到以字节为单位的指定位置。
当然也有人会说,CString中有类似的功能,但那毕竟是MFC的类,
如果是要玩纯C、C++呢?
这里我自己写了一个类,核心部分只用了C语言,实现了以上功能。
类中函数声明见下方:
/*
@param
pctszDataOfSour 源数据
pctszDelimiter 分隔符
lOperatorType 操作类型,1 正向查找、2 逆向查找
lOffset 偏移(单位字节),0 无偏移、>0 向数据末尾偏移
@return
>=0 偏移(单位字节)(0 无偏移、>0 向数据末尾偏移)、-1 失败
*/
long StringFind(LPCTSTR pctszDataOfSour, LPCTSTR pctszDelimiter, long lOperatorType, long lOffset);
具体代码详见我上传的资源:
https://download.youkuaiyun.com/download/skyksksksksks/87473688