從cin讀入一組詞並把它們存入一個vector物件,然後設法把所有詞都改寫為大寫字母的方法
阿新 • • 發佈:2019-02-02
#include<iostream>
#include<vector>
using namespace std;
int main()
{
vector<string> v2;//空的
string word;
while(cin>>word)
{
v2.push_back(word);
}
for(auto &i:v2)
{
i=toupper(i);
}
for(auto i:v2)
{
cout<<i<<endl;
}
}
結果報錯
[Error] no matching function for call to'toupper(std::basic_string<char>&)'
因為範圍for用錯了,它只對char有用,這裡的i是string
所以改成了下面的程式碼
#include<iostream> #include<string> #include<vector> using namespace std; int main() { vector<string> v2;//空的 string word; while(cin>>word) { v2.push_back(word); } //cout<<v2.size()<<endl; for(auto &i : v2)//這裡的i是字串,但是toupper只能處理字元 { for(auto &j:i) { j=toupper(j); } } for(auto i:v2) { cout<<i<<endl; } }
結果