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