|
383 / 281 / 31
Регистрация: 04.09.2009
Сообщений: 1,225
|
|
C++, UTF-8, char10.02.2014, 21:03. Показов 4758. Ответов 3
Метки нет (Все метки)
Приветсвую всех. Правильно ли я рассуждаю:
1) Если мне нужно использовать символы юникода в программе (самые немыслимые иероглифы, кириллицу), то их можно засовывать в строку char* или std::string, только если у меня исходники лежат в UTF-8, a отдельные символы этой строки можно сохранять только в широких переменных (char16_t, char32_t, wchar_t)? 2) То что С++11 стал поддерживает юникод, это значит, что появились фундаментальные типы char16_t char32_t, и они для того, чтобы можно было представлять юникод (в виде '\xFFFFFFFF') в файлах исходного кода, которые НЕ в юникодной кодировке? Добавлено через 3 часа 10 минут Не по теме: Почему на этом форуме никогда не дождешься помощи в вопросах о кодировках? Неужели это что-то сверхъестественное, или никому никогда не надо было писать программы на родных языках? Как зайдет речь о compile-time алгоритмах так все тут как тут :(
0
|
|
| 10.02.2014, 21:03 | |
|
Ответы с готовыми решениями:
3
Char *(UTF-8) -> char *(ANSI) UTF-8 - русские символы в char посимвольно масив Char (Windows-1251, ASCII, UTF-8) |
|
Ушел с форума
|
|||
| 10.02.2014, 22:32 | |||
|
Только нужно помнить, что, к примеру, string.length будет возвращать количество байт, а не символов, а это в некоторых случаях важно.
1
|
|||
|
923 / 639 / 198
Регистрация: 08.09.2013
Сообщений: 1,693
|
|||
| 10.02.2014, 22:33 | |||
Сообщение было отмечено gromo как решение
РешениеКажды символ utf-8 можно хранить, например, в восьмибайтном целом типе (long long). Символ в utf-8 занимает от 1 до 6 байт. Для русских букв достаточно short (или, если хотите, char16_t, хотя он для этого не предназначен). В виде '\xFFFFFFFF' можно представлять и их, и любые целые значения в файлах (почти) любой кодировки.
1
|
|||
| 10.02.2014, 22:54 [ТС] | |
|
0
|
|
| 10.02.2014, 22:54 | |
|
Помогаю со студенческими работами здесь
4
Конвертация из ASCII в UTF-32 или UTF-8 в UTF-32
Ошибка: "char *concat(char *,.)": невозможно преобразовать аргумент 1 из "const char [4]" в "char *"
(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const& Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи
и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|