我无法将字符串转换为大写以按字母顺序排序。在第三组单词之后,我的程序实际上开始变慢并卡住。我做错了什么?
string iName = list[i]->GetLastName(); // This just returns a string of a name
string jName = list[j]->GetLastName();
for(unsigned int k = 0; k < iName.length(); k++)
{
iName[k] = toupper(iName[k]);
}
for(unsigned int l = 0; l < jName.length(); l++)
{
iName[l] = toupper(jName[l]);
}
最佳答案
使用STL算法
库:
std::for_each(iName.begin(), iName.end(), std::toupper);
或(由 @Kerrek SB 建议)
std::transform(s.begin(), s.end(), s.begin(), std::toupper);
关于c++ - 将字符串转换为全部大写 - C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8302797/