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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
chr00me
15 / 15 / 0
Регистрация: 27.11.2011
Сообщений: 63
#1

Указатели и преобразование типов - C++

06.03.2012, 13:59. Просмотров 506. Ответов 5
Метки нет (Все метки)

Доброго времени суток уважаемые форумчанае!
Возник вопрос, о котором стыдно даже спрашивать. Но в сторону гордость.
Есть такой кусок:
C++
1
2
BYTE addrIp[] = {127,0,0,1};
qDebug() << *((DWORD*)addrIp);
По идее, должно вернуться значение типа DWORD, то есть "127001", а возвращается "16777343".
Совсем запутался с типами.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.03.2012, 13:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Указатели и преобразование типов (C++):

Указатели разных типов - C++
Добрый день уважаемые форумчане !!! Хочу уточнить для себя следующую деталь. Есть базовый класс Fada и производные от него Tasa ...

Добавить в список указатели на обьекты произвольных типов - C++
Доброго времени суток, плиз помогите кто чем может ,имеется класс class TGarbageCollector { public: template...

преобразование типов - C++
Visual c++ 2008 (win 7 64bit) консолька char VolumeNameBuffer; char FileSystemNameBuffer; unsigned long VolumeSerialNumber; ...

Преобразование типов - C++
Вопрос по преобразованию строки в число , и наоборот . Например на форме расположен MaskedTextBox , Button и Label . Как при нажатии на...

Преобразование типов - C++
Вот я создаю двумерный массив n=1; m=2; char **mas=new char *; mas=new char; после этого мне нужно увеличить размер...

преобразование типов в с++ - C++
Собственно вопрос в следующем. Распишите пожалуйста по шагам что происходит при выполнении данного кода { //... myclass x(10);...

5
Melkor
30 / 30 / 1
Регистрация: 15.12.2011
Сообщений: 108
06.03.2012, 14:19 #2
смотри в памяти это будет выглядеть вот так 7F000001. т.к. ты приводишь к DWORD-у это считается единым числом, если его перевести в 10-чную систему то получишь свой результат. надеюсь понятно объяснил.
0
chr00me
15 / 15 / 0
Регистрация: 27.11.2011
Сообщений: 63
06.03.2012, 14:23  [ТС] #3
Хм..."16777343" - это 10000007F в 16-чной системе...Но почему наоборот?
0
Melkor
30 / 30 / 1
Регистрация: 15.12.2011
Сообщений: 108
06.03.2012, 14:26 #4
у нас привычно смотреть на числа слева направо, вот я его и записал так, в компе внутрях записыватся все наоборот справа налево. если интересно посмотри в дебагере сырую память и ты увидишь как оно там хранится.
1
fasked
Эксперт С++
4945 / 2525 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
06.03.2012, 14:34 #5
Читаем и получаем просветление: http://ru.wikipedia.org/wiki/%D0%9F%...82%D0%BE%D0%B2
1
chr00me
15 / 15 / 0
Регистрация: 27.11.2011
Сообщений: 63
06.03.2012, 14:38  [ТС] #6
Ага...ясно. Спасибо большое за внесение ясности)
0
06.03.2012, 14:38
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.03.2012, 14:38
Привет! Вот еще темы с ответами:

Преобразование типов - C++
Как преобразовать массив char message в строку char *strmessage ?????

Преобразование типов - C++
Как преобразовать char * в float?

Преобразование типов - C++
Вообщем допустим есть два класа, класс T и класс A, комплексные числа в разной форме записи(тригонометрической и алгебраической). Для класа...

Преобразование типов - C++
С учебника переписал код на применение структур, но возникла проблема с преобразованием типов. Вот код проги: #include &quot;stdafx.h&quot; ...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru