Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
Прошу подсказать как можно сделать такое преобразование: Например есть число 1385323200 его нужно преобразовать к бинарному виду и на stdout вывести: "└ZТR", т.е ascii символ соответствующий бинарному представлению. Не верное представление символа, символ "?" имеет код 192. У меня есть процедура которая делает необходимые вычисления (код ниже), но есть сложность когда делаю преобразование к unsigned char получаются не те символы :АZ’R вместо └ZТR. Т.е. символы до 128 переводятся правильно, а от 129 - 256 нет. Подскажите, что я делаю не так? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 11:23 |
|
||
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
GijadНе верное представление символа, символ "?" имеет код 192. не актуально ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 11:25 |
|
||
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
GijadПрошу подсказать как можно сделать такое преобразование: Например есть число 1385323200 его нужно преобразовать к бинарному виду и на stdout вывести: "└ZТR", т.е ascii символ соответствующий бинарному представлению. Не верное представление символа, символ "?" имеет код 192. Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 11:35 |
|
||
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
Gijad, вы явно что-то делаете не так. Опишите задачу которую вы пытаетесь решить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 12:05 |
|
||
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
sherzod_, Для начала попробую по короче, хочу записать целое 4 байта на вывод, прочитать вывод из другого процесса. Например в другом процессе я читаю 4 байта, и обратно преобразую к целому. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 12:22 |
|
||
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
Dima TGijadПрошу подсказать как можно сделать такое преобразование: Например есть число 1385323200 его нужно преобразовать к бинарному виду и на stdout вывести: "└ZТR", т.е ascii символ соответствующий бинарному представлению. Не верное представление символа, символ "?" имеет код 192. Код: plaintext 1. 2. 3. Похоже на правду, спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 12:25 |
|
||
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
GijadПохоже на правду, спасибо. обратно по тому же принципу Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. PS И не надо никаких расчетов. Ошибка у тебя была в том что char это знаковый тип, может принимать значения от -128 до 127. unsigned char от 0 до 255. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 12:44 |
|
||
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
Dima TPS И не надо никаких расчетов. Ошибка у тебя была в том что char это знаковый тип, может принимать значения от -128 до 127. unsigned char от 0 до 255. Еще раз спасибо, проверил, то что нужно. В приведенной выше функции я пробовал и char и unsigned char, но разницы там не много например код 192, char преобразовывал к -64 и в структуре vector <char> сохранял A (смотрел через дебагер), а если использовал vector<unsigned char> то код был 192 а символ тоже A (смотрел через дебагер) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 12:55 |
|
||
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
Gijadsherzod_, Для начала попробую по короче, хочу записать целое 4 байта на вывод, прочитать вывод из другого процесса. Например в другом процессе я читаю 4 байта, и обратно преобразую к целому. Есть 3 способа. 1. Используйте потоки C++. Он медленнее следующего, но надежнее (не надо думать о типах и внутренней кухне). Код: plaintext 1. 2. 3. 4. 5. 2. Бинарный, нужно быть предельно аккуратным и точным (и не нужно никаких преобразований в строки, это приведет к ошибкам). Следующее будет работать только при передаче данных на одной и той же машине. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 3. Почитайте про сериализаторы (serialization) и используйте что-нибудь готовое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 13:21 |
|
||
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
GijadDima Tпропущено... Код: plaintext 1. 2. 3. Похоже на правду, спасибо. Похоже на поводу, но неправда .... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2014, 17:12 |
|
||
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
sherzod_Следующее будет работать только при передаче данных на одной и той же машине.'nj это поправимо преобразованием порядка байтов host<->network : htonl(), ntohl() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2014, 18:12 |
|
||
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
Спасибо, очень познавательно. Сам использовал свой говно-код. Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2014, 10:04 |
|
||
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
MasterZivПохоже на поводу, но неправда .... Можете объяснить почему? Я проверил такой подход на типе float и коротких целых, и тоже все получилось как надо. Основной критерий успешности чтобы перловая функция unpack корректно распознала передаваемые данные с соответствующими шаблонами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 11:10 |
|
||
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
GijadMasterZivПохоже на поводу, но неправда .... Можете объяснить почему? Я проверил такой подход на типе float и коротких целых, и тоже все получилось как надо. Основной критерий успешности чтобы перловая функция unpack корректно распознала передаваемые данные с соответствующими шаблонами. Про двум причинам. Первая - ты так и не объяснил толком, что же тебе нужно. Вторая - архитектуры машин бывают разные, и порядок этих байт может быть любой на данной конкретной машине. Использование сетевого порядка, по который тут говорили уже, было бы правильнее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 11:26 |
|
||
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
MasterZivПро двум причинам. Первая - ты так и не объяснил толком, что же тебе нужно. Вторая - архитектуры машин бывают разные, и порядок этих байт может быть любой на данной конкретной машине. Использование сетевого порядка, по который тут говорили уже, было бы правильнее. Нужно передавать данные от одного процесса к нескольким, данные нужно передавать в некотором формате. Как вариант, я передаю следующим образом: например int или float я просто пишу в 4 байта (порядок не важен т.к. этот формат мой и только, важен лишь порядок действий), если мне нужно передать строку то это выглядит так: (int длинна строки)(сама строка). Собственно этого мне достаточно чтобы передать любые данные, и представленный Dima T способ мне замечательно подошел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 12:29 |
|
||
|
Преобразование int к бинарному виду
|
|||
|---|---|---|---|
|
#18+
GijadMasterZivПро двум причинам. Первая - ты так и не объяснил толком, что же тебе нужно. Вторая - архитектуры машин бывают разные, и порядок этих байт может быть любой на данной конкретной машине. Использование сетевого порядка, по который тут говорили уже, было бы правильнее. Нужно передавать данные от одного процесса к нескольким, данные нужно передавать в некотором формате. Как вариант, я передаю следующим образом: например int или float я просто пишу в 4 байта (порядок не важен т.к. этот формат мой и только, важен лишь порядок действий), если мне нужно передать строку то это выглядит так: (int длинна строки)(сама строка). Собственно этого мне достаточно чтобы передать любые данные, и представленный Dima T способ мне замечательно подошел. Тогда ладно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 13:25 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=64&tid=2019644]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
31ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
| others: | 10ms |
| total: | 130ms |

| 0 / 0 |
