若要连续查找下一个位置,用截取后的字符串。或者修改函数为查找所有位置返回位置集合数组。

int 查找字符位置(char* a, char aa)
{//缘由https://ask.csdn.net/questions/7412984?spm=1005.2025.3001.5141参阅https://zhidao.baidu.com/question/2075477084329095628.html
	int w = 0;
	while (*a++ != aa)++w;
	return w;
}



	string a =  "中国-123 香港-456 韩国-789", aa[3]{}, aaa[3]{};
	aa[0] = a.substr(0, 4);
	char ss[47]{}; strcpy_s(ss, a.c_str());
	int s = 查找字符位置(ss, '-');

修改为可以设置起点。 

int 查找字符位置(char* a, char aa, int aaa)
{
	int w = aaa; *a += aaa;
	while (*a++ != aa)++w;
	return w;
}
	string a = "中国人-123"; 
	cout << a.substr(0, a.find('-')) << endl;

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐