Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
Так работает Код: plaintext 1. 2. 3. 4. а так нет Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2014, 14:10 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
если важно то Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2014, 14:11 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
wolverin а так нет Код: plaintext 1. 2. А так Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2014, 17:07 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
А чё просто не написать? Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2014, 18:01 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
wolverinТак работает а так нет Код: plaintext 1. 2. 1) setiosflags(ios::hex|ios::uppercase) - это какая-то ересь. Где вы такое нашли?. Я даже не уверен что оно что-то полезное делает. Для этого существует Код: plaintext 1. 2) Чтобы распечатать символ как число его нужно преобразовать в число. unsigned char - это не число, а все еще символ. Поэтому преобразовывать надо к unsigned int. Но тут тоже не все так просто. На многих платформах, char - знаковый, а значит при преобразовании (unsigned int) произойдет сначала расширение знака до int, а потом уже преобразование к unsigned, и для символов с кодами больше 0x7F получится что-то типа FFFFFFxx. Поэтому сначала нужно убрать знак Код: plaintext 1. Но это слишком громоздкая конструкция. Есть простой хак который делает то же самое: Код: plaintext 1. Здесь побитовое И делается с 0xFF что убирает старшие разряды с расширенным битом знака и результат побитовых операции всегда unsigned int. Что нам и требуется. Таким образом ответ такой: Официально: Код: plaintext 1. или короче: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2014, 18:06 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovsky1) setiosflags(ios::hex|ios::uppercase) - это какая-то ересь. Где вы такое нашли?. Я даже не уверен что оно что-то полезное делает. вот так просто работало (вычитал где то), решил по аналогии :) Код: plaintext 1. хотя вариант тоже работает )) Код: plaintext 1. Anatoly MoskovskyТаким образом ответ такой: Официально: Код: plaintext 1. спасибо, вроде получилось (покрайней мере выходит строка после шифрования gcry_cipher_encrypt библиотекой libgcrypt), нужно только теперь обратно конвертнуть (из 16ти ричного получить символ), чтобы дешифровать, сейчас проверю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 06:20 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
smaldА так Код: plaintext 1. спасибо, но не проверял, т.к. не понимаю хака ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 06:21 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
maytonА чё просто не написать? Код: plaintext 1. потому что мне надо не в stdout, а в сокет ответить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 06:22 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovsky, а не подскажете как сделать обратную операцию? их стрима в чар ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 07:16 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
* из 16ти ричного стрима в чар пробовал так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. где const char* text 16тиричная строка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 07:22 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
wolverinгде const char* text 16тиричная строка. полученная в предыдущем случае ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 10:34 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
wolverinа не подскажете как сделать обратную операцию? sscanf или strtoul ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 11:29 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
?sscanf или strtoul либо не правильно применяю вместо strtol, либо ошибка не в этом у меня ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 12:29 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
wolverinmaytonА чё просто не написать? Код: plaintext 1. потому что мне надо не в stdout, а в сокет ответить. Карамба! Почему в сях нету Код: plaintext 1. !!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 13:30 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
Причём тут це??? В хрюниксах (стандартный) ввод-вывод может работать на любых (файловых) дескрипторах, включая сокеты. Там (и только там) ваша хотелка имеет право на жизнь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 13:40 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
Тогда может автору поможет fprintf ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 14:11 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
"Меня опять терзают смутные сомнения", что у него - *nix. А "портабельный" вариант только один - получить требуемое в виде строк/массива байт и работать через сокеты "как все". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 14:17 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovПричём тут це??? В хрюниксах (стандартный) ввод-вывод может работать на любых (файловых) дескрипторах, включая сокеты. Там (и только там) ваша хотелка имеет право на жизнь. не ну так мне кажется изврат будет на libfcgi Код: plaintext 1. хотелось бы не привязывать одно к другому то и не шифровать напрямую в сокет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 14:47 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
wolverin, Другой вопрос - а зачем вам в С++ malloc? Вам что мало проблем с алгоритмами, так вы еще проблемы с утечками памяти хотите? :) Используйте стандартные контейнеры - std::vector, std::string. Касательно декодирования из потока hex, то простого способа нет. Надо читать по 2 символа из потока и потом ф-ей sscanf(hex, "%02x", &n) побайтово получать код и записывать в буфер. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Хотя судя по примеру выше, у вас исходная hex строка не в потоке а в обычном массиве. Тогда просто цикл по этому массиву по 2 символа и sscanf ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 15:32 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovsky, стандартные контейнеры не могу, тк пользую функции из libgcrypt шифрования/дешифрования gcry_cipher_encrypt/gcry_cipher_decrypt, которые требуют unsigned char*, попробую в понедельник через sscanf, похоже у меня еще с самими функциями проблема. буду вам очень признателен, если сможете посмотреть мой вопрос ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 18:35 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
wolverinстандартные контейнеры не могу, тк пользую функции из libgcrypt шифрования/дешифрования gcry_cipher_encrypt/gcry_cipher_decrypt, которые требуют unsigned char* Не вижу связи. Стандартные контейнеры предоставляют указатель на буфер в любой момент. Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 20:50 |
|
||
|
Как в stringstream сделать %02X
|
|||
|---|---|---|---|
|
#18+
wolverinсамими функциями проблема. посмотреть мой вопрос Там вместо Код: plaintext 1. напиши Код: plaintext 1. Просто внимательней почитать мануал по libgcrypt. И c ключом там как? Ключом должен быть массив в 16 байт для AES128. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 23:00 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=38682429&tid=2019393]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
67ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
80ms |
get tp. blocked users: |
1ms |
| others: | 279ms |
| total: | 463ms |

| 0 / 0 |
