FXIX
Господа, ламерский вопрос:
Цитата:
#include <ctype.h>
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
string s = "привет";
transform(s.begin(), s.end(), s.begin(), (int(*)(int)) toupper);
cout << s << endl;
}
пытаюсь перевести строку в верхний регистр. кодировка файла utf-8. не переводит. Если вместо "привет" будет "hellow" то переводит. ОС - ubuntu.
FXIX
Цитата:
#include <ctype.h>
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
string s = "привет";
locale loc("ru_RU.utf8");
const ctype<char>& ct = use_facet<ctype<char> >(loc);
transform(s.begin(), s.end(), s.begin(), std::bind1st(std::mem_fun(&ctype<char>::toupper), &ct));
cout << s << endl;
}
так тоже не хотит