关于C++的vector 与 string 的求助!

题目:从cin中输入一组次把它们保存在vector对象内,然后将所有次改为大写,并输出成一行#include<iostream>#include<vector>#incl... 题目:从cin中输入一组次把它们保存在vector对象内,然后将所有次改为大写,并输出成一行
#include<iostream>
#include<vector>
#include<string>
using namespace std;

int main(){
vector<string> vs1;
string a;
while(cin>>a)
vs1.push_back(a);
for(vector<string>::size_type i=0;i<vs1.size();i++){
if(isalpha(vs1[i]){
toupper(vs1[i]);}
if(!isprint(vs1[i]){
cout<<vs1[i]<<endl;}
}
}
我这个代码有错误,求改正!

错误基本上都是这种,不知道为啥,
展开
 我来答
zjnny
2014-02-01 · TA获得超过2037个赞
知道小有建树答主
回答量:1055
采纳率:100%
帮助的人:1062万
展开全部
toupper(vs1[i][0]);string 不是char型
原型:
extern int toupper(int c);
axq1999011
2014-02-01 · TA获得超过202个赞
知道答主
回答量:115
采纳率:0%
帮助的人:74.2万
展开全部
  1. vs1的数据类型是string,强制转换成char一定出错。将string都改成char

  2. 别用vector<string>::size_type,用int就好

  3. c的标准库里没有sprint只有sprintf。最后一个判断语句请删除,直接显示结果即可

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式