while(cin>>word)
会导致一直要求输入单词,而且停不下来 cin>> 的返回值是istream&,这个东西不会是0或者null吧
另外,如果++iter已经是end()了 是不可以做*(++iter)的 判断句可以改为while((iter+1)!=str.end())
if(*iter==*(++iter))
问题出在这句上吧,当iter指向了vector的end的前一个的时候,++iter已经指向了end,而end的内容是vector下一个可使用但是还未使用的空间,所以发生的空指针引用。