本文原创,如需转载,请添加本文链接!
近期在利用C++和opencv实现HOG+SVM进行行人检测的项目,在其中保存图像时,想要利用原始图像名进行保存(即a344.bmp图像,想利用a344作为新的图像名字的一部分进行标记保存),此时需要提取特定字符‘.’前的字符串,为此,查了很多资料,相应的回去了三个函数的用法,记录下来,分享给大家,同时也进一步加强记忆:
void StringExtract( string str1, char chr)
{
string pstr1,afstr1;
char* charp = strchr(&str1[0], chr); //查找到字符chr的位置
size_t NameLen = charp - &str1[0]; //字符chr前的字符串长度
pstr1=str1.substr(0, NameLen); //字符chr前的字符串
afstr1=charp+1;//字符chr后的字符串
}
三个函数:
strchr函数:
原型:
extern char *strchr(char *str,char character) 参数:str为一个char的指针,即一个字符串的首地址,character为一个待查找字符。
所在库名:#include
函数功能:从字符串str中寻找字符character第一次出现的位置。
返回说明:返回指向第一次出现字符character位置的指针,如果没找到则返回NULL。
st
void StringExtract( string str1, char chr)
{
string pstr1,afstr1;
char* charp = strchr(&str1[0], chr); //查找到字符chr的位置
size_t NameLen = charp - &str1[0]; //字符chr前的字符串长度
pstr1=str1.substr(0, NameLen); //字符chr前的字符串
afstr1=charp+1;//字符chr后的字符串
}
三个函数:
strchr函数:
原型:
extern char *strchr(char *str,char character) 参数:str为一个char的指针,即一个字符串的首地址,character为一个待查找字符。
所在库名:#include
函数功能:从字符串str中寻找字符character第一次出现的位置。
返回说明:返回指向第一次出现字符character位置的指针,如果没找到则返回NULL。
st
