Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
136 / 49 / 5
Регистрация: 10.01.2017
Сообщений: 1,882
1

Unicode в c++

18.02.2021, 10:59. Показов 394. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте,

Подскажите, просто bynthtcyj:

C++
1
string my_unicode1 = u8"Hello";
и

C++
1
2
3
string my_string1 = "Hello";
 
string my_unicode_1 = (u8)my_string1; //Условно
В чем принципиальная разница ? Почему константную строку перекодировать можно, а переменную нет ?
Ну могли же сделать, примерно, как в WinApi, указать кодировку символов в my_string1 и поставить u8 и получить перекодировку.

Или есть, была какая то принципиальная сложность ?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.02.2021, 10:59
Ответы с готовыми решениями:

Unicode
Нужна функция которая переобразует строку, в юникод строку, что бы все символы из той строки были в...

Unicode в c++
Нужно вывести в консоли символ: \ Просто так сделать это нельзя, решил использовать Unicode. Код...

C++ и Unicode
Всем привет. Читая про кодовые точки в Java, мне стало интересно как с этим дела в C++. Т.е. для...

ANSI to Unicode
Всем доброго времени суток! Есть задачка преобразовать строку в cp1251 в строку в unicode и...

2
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
18.02.2021, 11:56 2
u8 работает на стадии компиляции. Чтобы реализовать его так, как вы хотите и чтоб работало на стадии компиляции, придется делать constexpr функцию. На момент когда эти префиксы вводили, возможности constexpr были весьма убоги, отсюда и такая реализация. Собственно, даже сейчас constexpr имеет весьма ограниченные возможности и я не очень представляю как без бубна вернуть оттуда const char*. И чтоб без утечек памяти от "а если вызовут на стадии исполнения, память кто чистить будет?".
1
19409 / 10028 / 2443
Регистрация: 30.01.2014
Сообщений: 17,678
18.02.2021, 13:14 3
Цитата Сообщение от Optimus11 Посмотреть сообщение
Ну могли же сделать, примерно, как в WinApi, указать кодировку символов в my_string1 и поставить u8 и получить перекодировку.
Примерно - это есть.
https://en.cppreference.com/w/cpp/locale/codecvt
1
18.02.2021, 13:14
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.02.2021, 13:14
Помогаю со студенческими работами здесь

ANSI и UNICODE
#include <iostream> #include <windows.h> using namespace std; int main(){ TCHAR j;...

Unicode символы
Здравствуйте.Каким образом можно вывести на экран символы unicode?

ANSI to Unicode
Hi all. Вопрос к экспертам :) Хочу сохранить строку текста (кириллица) в текстовый файл. Строка...

UNICODE функции
Добрый вечер! 1>c:\users\alexsvk\documents\visual studio...

Преобразование в Unicode
Как преобразовать тип Buffer ,чтобы не было ошибки: error C2664: int...

Чтение Unicode
Есть файл в кодировке Unicode. Надо вывести его содержимое в другой файл и в консоль. Использую...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru