string::size_type
size_type是string类和vector类内定义的一个无符号整形类型
string::find() 返回值位size_type类型
size_type在不同的机器上长度可以不相同
如果没有找到,则返回 string::nopos 不同的编译器对其理解不同
正确的写法是
string::size_type rc = str.find(...);
if(rc == string::nopos)
size_type == unsigned int
所以当在循环使用,且判断条件为 >=0 时是无效的。
当unsigned int s = 1时 s-1 = 4294967295 进入无限循环
例:for(string::size_type i = 2; i>=0; i--)