71 / 71 / 55
Регистрация: 04.06.2016
Сообщений: 237
|
|
1 | |
Как char[] перевести в битовую маску long long(64 бита) и наоборот?16.07.2017, 00:26. Показов 2373. Ответов 9
Метки нет (Все метки)
0
|
16.07.2017, 00:26 | |
Ответы с готовыми решениями:
9
Перевести long long unsigned int в массив char Перевести большой массив char в long long Требуется написать функцию long long pow(long long a, unsigned int p), которая возводит число a в степень p Как преобразовать const char * в long в С++, 0xE0E040BF в long |
Вездепух
11691 / 6370 / 1723
Регистрация: 18.10.2014
Сообщений: 16,052
|
||||||
16.07.2017, 01:34 | 2 | |||||
Никак.
Во-первых, битовые маски принято хранить в беззнаковых типах. Во-вторых, какой вам нужен порядок байтов в маске вы не удосужились сообщить. Без этого вопрос бессмыслен.
1
|
71 / 71 / 55
Регистрация: 04.06.2016
Сообщений: 237
|
|
16.07.2017, 01:41 [ТС] | 3 |
TheCalligrapher, Порядок?Не знаю.Цель - перевести строку в битовую маску обработать её алгоритмом шифрования и перевести обратно в строку.
0
|
Модератор
12454 / 7479 / 1752
Регистрация: 25.07.2009
Сообщений: 13,755
|
||||||
16.07.2017, 03:39 | 4 | |||||
Странным вопросам - странные решения!
Код
$ ./a.out 12345678 <-> 3837363534333231
0
|
Вездепух
11691 / 6370 / 1723
Регистрация: 18.10.2014
Сообщений: 16,052
|
|
16.07.2017, 05:08 | 5 |
"Строку"???! Откуда вдруг взялась строка и почему в исходном вопросе о строке нет ни слова?
0
|
71 / 71 / 55
Регистрация: 04.06.2016
Сообщений: 237
|
|
16.07.2017, 12:35 [ТС] | 6 |
TheCalligrapher, Ну массив чар в каком то смысле строка,нет?
Добавлено через 4 минуты TheCalligrapher, Строку планирую разбить на блоки по 8 char и каждый обрабатывать.
0
|
Вездепух
11691 / 6370 / 1723
Регистрация: 18.10.2014
Сообщений: 16,052
|
|
16.07.2017, 13:04 | 7 |
Да нет, совсем не обязательно. Массив
char это просто массив маленьких целых, массив байтов. Будет ли это строкой или нет - зависит только от вас. А тот факт, что размер массива у вас совпадает с "типичным" размером long long - 8 байтов - уж совсем сбивает с толку - мыслей о строке не возникает вообще.Строка в массиве char[8] будет иметь максимальную длину 7. Откуда взялся такой странный размер блока для разбиения?
0
|
71 / 71 / 55
Регистрация: 04.06.2016
Сообщений: 237
|
|
16.07.2017, 13:11 [ТС] | 8 |
TheCalligrapher, строка будет произвольной длины,я её разобью на блоки по 64 бита,обработаю их,сложу и добавлю нуль-терминатор в конце(он не будет участвовать в обработке).
0
|
Вездепух
11691 / 6370 / 1723
Регистрация: 18.10.2014
Сообщений: 16,052
|
|
16.07.2017, 13:19 | 9 |
Ну тогда снова возникает вопрос, что именно вы имели в виду под переводом char[8] в long long. Похоже, что то, что я написал в моем превом ответе - это и есть то, что нужно.
0
|
71 / 71 / 55
Регистрация: 04.06.2016
Сообщений: 237
|
|
16.07.2017, 13:29 [ТС] | 10 |
TheCalligrapher, Да это то что нужно
0
|
16.07.2017, 13:29 | |
16.07.2017, 13:29 | |
Помогаю со студенческими работами здесь
10
Как преобразовать char[8] к unsigned long long? Как long перевести в char? Преобразование массива char в массив long long Написать функцию для перевода переменной типа long в символьную строку в шестнадцатиричном представлении ( ltoah( long num, char s[]) ) и тестирующую Не понятный undefined reference to `unsigned long long f<unsigned long long, void> long long r char[] __int64 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |