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

Передать из массива char в переменную long? - C++

Восстановить пароль Регистрация
 
VladimirU
120 / 98 / 18
Регистрация: 14.02.2013
Сообщений: 742
04.03.2013, 21:32     Передать из массива char в переменную long? #1
Переменную x.number = 0xff804020; я передал в массив x.bytes по байтно
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include "stdafx.h"
#include "conio.h"
 
union X
{ 
unsigned long number; 
unsigned char bytes[4]; 
};
int main()
{
X x;
x.number = 0xff804020;
 
printf("%x,%x,%x,%x", x.bytes[0], x.bytes[1], x.bytes[2], x.bytes[3]);
getch();
}
A как обратно перевести ?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Кудаив
328 / 405 / 24
Регистрация: 27.05.2012
Сообщений: 1,162
Завершенные тесты: 2
04.03.2013, 21:43     Передать из массива char в переменную long? #2
функция atol помоему
VladimirU
120 / 98 / 18
Регистрация: 14.02.2013
Сообщений: 742
04.03.2013, 21:47  [ТС]     Передать из массива char в переменную long? #3
есть такая функция я знаю. Она на моём компиляторе не робит. Я для микроконтроллера пишу.
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
04.03.2013, 21:49     Передать из массива char в переменную long? #4
Цитата Сообщение от VladimirU Посмотреть сообщение
A как обратно перевести ?
всмысле? это ж union.
VladimirU
120 / 98 / 18
Регистрация: 14.02.2013
Сообщений: 742
04.03.2013, 21:52  [ТС]     Передать из массива char в переменную long? #5
Цитата Сообщение от Kastaneda Посмотреть сообщение
всмысле? это ж union.
Я же говорю не не работает atoi.
Кудаив
328 / 405 / 24
Регистрация: 27.05.2012
Сообщений: 1,162
Завершенные тесты: 2
04.03.2013, 21:56     Передать из массива char в переменную long? #6
Кастанеда, наверно имеет ввиду, что данные в объеднении перекрываются
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
04.03.2013, 21:56     Передать из массива char в переменную long? #7
я видать сути вопроса не понял, зачем что-то куда-то передавать?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include "stdafx.h"
#include "conio.h"
 
union X
{ 
unsigned long number; 
unsigned char bytes[4]; 
};
int main()
{
X x;
x.number = 0xff804020;
 
printf("%x,%x,%x,%x", x.bytes[0], x.bytes[1], x.bytes[2], x.bytes[3]);
printf("%ld", x.numbers);
getch();
}
VladimirU
120 / 98 / 18
Регистрация: 14.02.2013
Сообщений: 742
04.03.2013, 22:04  [ТС]     Передать из массива char в переменную long? #8
У меня две переменные
C++
1
2
char aaa[4]={12,13,14,15};
long bbb;
надо aaa передать в bbb что бы вышло вот так 0x12131415.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.03.2013, 22:09     Передать из массива char в переменную long?
Еще ссылки по теме:

C++ long long r char[] __int64
Перевести большой массив char в long long C++
C++ Преобразование массива char в массив long long

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
04.03.2013, 22:09     Передать из массива char в переменную long? #9
Про little-endian / big-endian слышал?
Вобщем вот http://ru.wikipedia.org/wiki/Порядок_байтов советую ознакомиться.
Yandex
Объявления
04.03.2013, 22:09     Передать из массива char в переменную long?
Ответ Создать тему
Опции темы

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