LINUX.ORG.RU

c++ работа с UTF-8 строка


0

0

Помоги с сабжем. уже 2 дня мучаюсь.

Возьмум за пример http://publib.boulder.ibm.com/infocenter/iadthelp/v7r0/index.jsp?topic=/com.i...

#include <wchar.h>
#include <locale.h>
#include <stdarg.h>

int main()
{
    setlocale(LC_ALL, "UTF-8");
    wprintf(L"%c\n", L'й');
    return 0;
}

й - набран в utf-8, компилируем, запускаем и получаем:

$ ./a.out
9

что не так?

★★

#include <locale.h> 
#include <wchar.h> 
main() 
{ 
  wchar_t s[] = L"русский"; 
  setlocale(LC_CTYPE, ""); 
  wprintf(L"%ls\n", s); 
  return 0; 
} 

А как можно получить доступ к элементам масcива?

f3ex ★★
() автор топика
Ответ на: комментарий от alexru

vi test.cpp

#include <iostream>
main()
{
char *s = "русский";
std::cout << s <<"\n";
return 0;
}


g++ test.cpp -o test

./test

русский

anonymous
()
Ответ на: комментарий от Reset

C точки зрения ввести-вывести utf-8 ничем не отличается от 8-ми битных ascii-z строк

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.