|
0 / 0 / 0
Регистрация: 11.02.2012
Сообщений: 15
|
|
Как перевести строку в читабельный вид?11.02.2012, 12:58. Показов 7357. Ответов 56
Метки нет (Все метки)
Собственно из названия темы. Есть строка символов (к примеру такая: 0430002004370430043904340438)
Как перевести ее в читабельный вид, т.е в текст. Уже всю голову сломал Подскажите что прочитать(ссылочку если можно)
0
|
|
| 11.02.2012, 12:58 | |
|
Ответы с готовыми решениями:
56
Прилетают данные UTF-8, как правильно преобразовать в читабельный вид?
Как перевести строку в число? |
|
0 / 0 / 0
Регистрация: 11.02.2012
Сообщений: 15
|
||
| 13.02.2012, 08:48 [ТС] | ||
|
Или можно по другому сделать?
0
|
||
|
|
||||||||||||
| 13.02.2012, 09:11 | ||||||||||||
|
Для понятности пример из поста #13 следовало переписать так: вместо
1
|
||||||||||||
|
0 / 0 / 0
Регистрация: 11.02.2012
Сообщений: 15
|
|
| 13.02.2012, 09:37 [ТС] | |
|
кажется работает. Огромное Вам СПАСИБО
0
|
|
|
|
||||||||||||||||
| 13.02.2012, 11:23 | ||||||||||||||||
|
dimmu, всё же я доделал вариант из поста 19, мой недочёт был в том что 430 была 16-ричная а не десятичная запись WCHAR и 430Hex == 1072 что в UTF-8 соответсвует символу 'a' русское. Ниже скрин, код и готовый проект на плюсах, который переводит ваш текст \u0430\u0020\u0437\u0430\u0439\u0434\u04 38
Для упрощения вводу - строку текста SMS-ки помещаем в файл sms.txt котрый и на экране а также в файле out.txt получаем готовый текст Код С++
Вот и всё что добавили в изначальный алгоритм
Не по теме: PS:Также предлагаю читающим этот пост обратить внимание на realloc в стиле плюсов
0
|
||||||||||||||||
|
|
|
| 13.02.2012, 11:27 | |
|
А и да ещё одно дополнение - руссификацию консольного вывода проводил с помощью system("chcp 1251"); поэтому если при первом запуске вылезет билеберда с русским(как на скрине) то нужно всего лишь произвести настройку шрифта консоли - как это сделать см ссылку
Создание файла в UTF-8 кодировке
0
|
|
|
|
||||||
| 13.02.2012, 11:32 | ||||||
1
|
||||||
|
|
||||||
| 13.02.2012, 11:48 | ||||||
|
Также предлагаю вариант кода для любителей С, функционал аналогичен функционалу кода приведенного в посте 44
0
|
||||||
|
|
||
| 13.02.2012, 12:07 | ||
|
По поводу примера из поста 47. Довыделением памяти по одному байту - это очень плохой стиль программирования. Нормальный подоход - выделить, к примеру, 1000 байт, а когда они исчерпались - довыделить ещё 1000 байт. Такой код однозначно будет работать быстрее и с хорошей вероятностью будет потреблять меньше памяти (из-за отсутствия кривой фрагментации в виде маленьких учстков) Добавлено через 4 минуты По поводу примера из поста 44. Как думаешь, что тебе скажет твоя программа, если встретит последовательность "\u0fff"?
0
|
||
|
|
|||||||
| 13.02.2012, 12:47 | |||||||
(я же под юникод текста программу разрабатываю, код любого символа меньше 1251(кодовая страница), ну можно ввести доп функцию проверки, если строка \uxxx содержит на позициях xxx не цифры, данный символ не обрабатывать или переводить в значение самописным велосипедом, на который просто жаль времени на написание - это не суть важно как по мне)На счёт внятного объяснения С++ realloc см код ниже: Суть в следующем каждому неинициализированному 1-му сконца элементу вектора vec прилепливаем память субвектора add из 2-х элементов, таким образом в блоке vec расширяем на 1-ку конечный маркер использованой памяти, а тем временем "убиваем" наш субвектор add. В общем "обманываем систему - двигая маркер конца использованного блока)
0
|
|||||||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|||||||||||
| 13.02.2012, 13:00 | |||||||||||
|
-=ЮрА=-,
Ты сначала ставишь итому элементу число. Потом выделяешь память под другой указатель (значения в нем лежат мусорные) - затем записываешь в первую ячейку памяти значение второй ячейки памяти. Йазз? Добавлено через 1 минуту
0
|
|||||||||||
|
|
|||||||||||||||||||||||
| 13.02.2012, 13:31 | |||||||||||||||||||||||
0
|
|||||||||||||||||||||||
| 14.02.2012, 17:47 | |
|
Не по теме: ForEveR, Evg, динамичесский realloc в С++
0
|
|
|
|
|
| 14.02.2012, 18:37 | |
|
А оценивать-то что надо? Если метод, при помощи которого работает довыделение памяти, то в посте #49 я уже о нём писал. Если о реализации самого класса, то, закрв глаза на основной бардак хочется упомянуть о концептуально неправильном построении метода alloc. Данный метод должен принимать только размер и ничегоне возвращать. А вся работа с m_Str должна выполняться внутри него (в противном случае, нафига вообще нужно было использовать класс, если не использовать по нормальному инкапсуляцию). А код, в котором делается delete на параметр метода - это моветон
0
|
|
|
|
|
| 14.02.2012, 18:49 | |
|
Evg, там задание было о строках, в контексте того задания решил реализовать realloc для вводимой строки, я выполнил его с названием alloc т.к. он имеет чуточку большие чем у С-ного собрата возможности, если память под ptr не выделена то выделим её, если память уже выделена и нужно изменить её размер, то изменяем...
0
|
|
|
|
|
| 14.02.2012, 18:58 | |
|
Неважно. alloc - это не есть универсальная функция, а всего лишь метод класса. Хотя ты его попытался сделать как универсальный метод (типа если у нас несколько указателей внутри класса, то для всех них как бы можно работать через этот метод). Я бы так делать не стал. На мой взгляд это корявая реализация. Если уж очень нужно работать с несколькими указателями, то лучше завести отдельный класс для динамически расширяемого массива char'ов. Оно куда логичнее будет выглядеть.
1
|
|
| 14.02.2012, 18:58 | |
|
Помогаю со студенческими работами здесь
57
Как перевести строку в BSTR* Как перевести массив в строку? Перевести символ в двичный вид
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Сочетание глобально распределённой вычислительной мощности и инновационных. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|