假设我有一个字符串
我使用的代码如下:
foo
,我想查找第二个句点(如果有的话)。我使用的代码如下:
std::size_t start = foo.find_first_of('.');
if (start != std::string::npos){
std::size_t next = foo.find_first_of('.', start + 1);
/*and so on*/
我想知道当第一个句点在字符串末尾时,这是否被定义良好。
我认为是的,因为start + 1
将位于空终止符上,所以我不会冒险访问任何我不应该访问的内存。
我的理解正确吗?