当我尝试在字符串上使用 tolower 时,而不是使字母小写,程序将它们转换为随机符号。这是我的代码:
#include <iostream>
#include <locale>
using namespace std;
int main()
{
string hi= "thTSMSdjNnJlJjnJJKn";
for (int i=0; i<hi.length(); i++)
{
hi[i]+=tolower(hi[i]);
cout << hi[i];
}
}
这是输出:Þð╚ã║ã╚È╝▄┤Ï┤È▄┤┤Â▄</p>
它有什么问题?这不是我想要使用 tolower 的实际代码,但我只是将它放在一个单独的示例中,以便更清楚。我也不介意使用 to upper 但主要是我让字符串中的所有字母都是相同的大小写。