可能重复:
将字符串中的第一个字母转换为大写
如何将字符串转换为 C++ 中的标题大小写 "hello world" 到 "Hello World" 。字符串甚至可以有多字节字符
可能重复:
将字符串中的第一个字母转换为大写
如何将字符串转换为 C++ 中的标题大小写 "hello world" 到 "Hello World" 。字符串甚至可以有多字节字符
好吧,如果您按照上一个问题的建议将字符串中的第一个字母转换为大写,您需要做的就是将字符串拆分为一个单词,并将其大写。
std::wstring s = L"iron maiden";
if(s.length() > 0)
s[0] = toupper(s[0]);
for(std::wstring::iterator it = s.begin() + 1; it != s.end(); ++it)
{
if(!isalpha(*(it - 1)) &&
islower(*it))
{
*it = toupper(*it);
}
}
基本上,您只需要编写/使用解析器。