请教个位大侠C++primer(4th edition) 上的3.14题(我的代码如下)
编译器为:visual studio team system 2008问题:编译通过但运行不正常
原书中的3.14题为:读入一段文本到vector对象,每个单词存储为vector中的一个元素。把vector对象中每个单词转化为大写字母。输出vector对象中转化后的元素,每八个
单词为一行。
求教我的程序的问题所在?
#include<iostream>
#include<vector>
#include<string>
using std::string;
using std::vector;
using std::cin;
using std::cout;
using std::endl;
int main()
{
vector<string> ivec;
string str;
while(cin>>str)
{
ivec.push_back(str);
}
for(vector<string>::size_type ix=0;ix!=ivec.size();ix++)
{
for(int i=0;i!=sizeof(ivec[ix]);i++)
if(ivec[ix][i]>=97)
ivec[ix][i]-=32;
}
for(vector<string>::size_type ix=0;ix!=ivec.size();ix++)
{
cout<<ivec[ix]<<" ";
if((ix+1)%8==0)
cout<<endl;
}
}