gpt4 book ai didi

c++ - 将字符串转换为大写字母时遇到问题

转载 作者:太空狗 更新时间:2023-10-29 20:06:56 26 4
gpt4 key购买 nike

使用以下控制台应用程序,我将每个字符串转换为大写字母。但输出中的字符串值保持不变。我在这里做错了什么。也将不胜感激任何有关有效执行此操作的帮助。感谢您的帮助。

int main()
{

vector<string> svec, svec_out;
string word;
int run;

cout << "Press 0 to quit giving input string" << endl;

while(1)
{
cin >> word;
svec.push_back(word);

cin >> run;
if (!run)
break;
}

cout << "converting to upper case... " << endl;

int i;
for (i = 0; i!=svec.size(); ++i)
{
word = svec[i];
for (string::size_type j=0; j < word.size(); ++j)
{
toupper(word[j]);
}

svec_out.push_back(word);
}


for ( i = 0; i<svec_out.size(); i++)
cout << svec_out[i] << endl;

return 0;
}

最佳答案

toupper 将返回大写值而不是就地修改值。因此,您的代码应为:

word[j] = toupper(word[j]);

关于c++ - 将字符串转换为大写字母时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5408772/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com