Форум программистов, компьютерный форум CyberForum.ru

Как преобразовать char[8] к unsigned long long? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 18, средняя оценка - 4.78
Zachary
0 / 0 / 0
Регистрация: 05.12.2010
Сообщений: 20
19.04.2011, 10:19     Как преобразовать char[8] к unsigned long long? #1
Требуется выполнить преобразование char[8] к unsigned long long и обратно
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
KuKu
 Аватар для KuKu
1538 / 1016 / 69
Регистрация: 17.04.2009
Сообщений: 2,945
19.04.2011, 17:28     Как преобразовать char[8] к unsigned long long? #2
C++
1
2
3
4
char a[8];
unsigned long long b;
...
memcpy(&b, a, 8);
или как то по особому нужно ?
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
19.04.2011, 17:39     Как преобразовать char[8] к unsigned long long? #3
KuKu, полагаю, человеку нужно перевести строку в число. т.е. "1234" в 1234))

Добавлено через 13 секунд
Ну а так - atol().
Zachary
0 / 0 / 0
Регистрация: 05.12.2010
Сообщений: 20
19.04.2011, 20:45  [ТС]     Как преобразовать char[8] к unsigned long long? #4
KuKu, полагаю, человеку нужно перевести строку в число. т.е. "1234" в 1234))

Добавлено через 13 секунд
Ну а так - atol().
Нет, просто надо было для шифрования определенный операции со строкой провести
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16824 / 5245 / 320
Регистрация: 30.03.2009
Сообщений: 14,125
Записей в блоге: 26
19.04.2011, 21:59     Как преобразовать char[8] к unsigned long long? #5
Цитата Сообщение от Zachary Посмотреть сообщение
Нет, просто надо было для шифрования определенный операции со строкой провести
Если я правильно понимаю вопрос, то так:

C
1
2
3
char c[8];
long long l;
l = *((long long*)&c);
но таким способом на машинах с big endian и little endian ты получишь разные значения (байты в обратном порядке будут идти)
Yandex
Объявления
19.04.2011, 21:59     Как преобразовать char[8] к unsigned long long?
Ответ Создать тему
Опции темы

Текущее время: 06:55. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru