![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 30.10.2010
Сообщений: 7
|
![]()
Такая задача:
Есть масив символов (строка). Например unsigned char textkey="00112233445566778899aabbcc ddeeff". (Ключ для шифрования, если спросите, что это и зачем). Для дальнейшей работы надо этот масив символов сделать масивом соответствующих байт, а то есть char bytekey={0x00,0x11,0x22,...,0xee,0x ff}. Пожалуйста, помогите это сделать наиболее простым способом... Или, если можно вводить данные в поле Edit сразу в Hex формате, а не как текст, то подскажите, как... Юзаю C++ Builder 2007. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 21.03.2009
Сообщений: 2,193
|
![]()
Функция HexToInt (так, кажется) переводит строку AnsiString в число, если там была символьная запись в 16-ричном формате. Ну и еще можете пользоваться различными строковыми потоками, sscanf для чтения из строк в числа.
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта Тема на форуме, посвященная ему же |
![]() |
![]() |
![]() |
#3 |
Регистрация: 30.10.2010
Сообщений: 7
|
![]()
К сожалению, есть только IntToHex(), но ни в билдере, ни в делфи не обнаружил HexToInt().
Собственно, StrToInt() переводит шестнадцатиричную запись в число... Прийдётся придумывать функцию, так как у меня массив сплошной, без "0х..." Я просто надеялся, что есть что-то уже готовое. Ладно, спасибо за внимание. |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 02.02.2010
Сообщений: 599
|
![]()
Да и в ручную это не очень трудно:
Код:
"Лишь то читается легко, что написано с трудом; что в час написано, то в час и позабыто."
|
![]() |
![]() |
![]() |
#5 |
Регистрация: 30.10.2010
Сообщений: 7
|
![]()
Кажись, не то...
Мне нужно из каждых двух симвлов строки получить один соответствующий байт. То есть, если string str="ff", char byte=0xff, а не "0xff". |
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 02.02.2010
Сообщений: 599
|
![]()
Так это еще проще:
Код:
"Лишь то читается легко, что написано с трудом; что в час написано, то в час и позабыто."
|
![]() |
![]() |
![]() |
#7 |
Регистрация: 30.10.2010
Сообщений: 7
|
![]()
Ух ты!
Очень большое спасибо! Действительно просто. У меня идея похожая была, но что-то позабыл о возможности сравнения символов, думал, надо все возможные варианты описывать... балда(( Еще раз спасибо! |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Массив в dll - как разместить массив в dll и как вызвать элемент этого массива по индексу? | Кинельски | Помощь студентам | 0 | 23.05.2010 20:52 |
Как проверить наличие в конкретной папке DLL, а потом на вход каждой подать массив байт,и на выходе тоже. | Sanches_Ramires | Общие вопросы .NET | 1 | 02.02.2009 15:02 |
Массив символов | PsyTech | Общие вопросы C/C++ | 4 | 08.10.2007 10:13 |