Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.12.2015, 18:17   #1
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
Вопрос Вариантная структура.

Господа, как объяснить сабж, изобрАженный на скриншоте?

125.jpg

Отсутствие/наличие "packed" ничего не меняет.
Компайлер 32-битный.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 19.12.2015, 18:36   #2
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

integer замените на byte если не поможет будем думать.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума Ответить с цитированием
Старый 19.12.2015, 18:42   #3
come-on
Участник клуба
 
Регистрация: 21.10.2015
Сообщений: 1,361
По умолчанию

А ос какая?
come-on вне форума Ответить с цитированием
Старый 19.12.2015, 18:42   #4
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
integer замените на byte если не поможет будем думать.
замена модификатора не приведёт ни к чему, т.к. он в код не попадает. Проверял с разными типами.

Цитата:
А ос какая?
Это-то тут причём?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...

Последний раз редактировалось Stilet; 19.12.2015 в 18:53.
min@y™ вне форума Ответить с цитированием
Старый 19.12.2015, 18:47   #5
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А в какой версии? Как будто так описано case Kind: integer of
Д7 и XE2 4 байта возвращает
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 19.12.2015, 18:48   #6
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

За что купил за то и продаю. Значит баг. Меняйте компилятор, на более новый там вроде исправили. Ещё можно принудительно изменить выравнивание структур
{$A1}
{$A4} - размер по умолчанию.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума Ответить с цитированием
Старый 19.12.2015, 18:54   #7
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
А в какой версии?
XE10.
Цитата:
Меняйте компилятор, на более новый
Это как?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 19.12.2015, 19:01   #8
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

Значит не исправили. XE5 полёт нормальный. 4 байта возвращает, что для 32 что для 64.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума Ответить с цитированием
Старый 19.12.2015, 19:05   #9
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Значит баг.
А, ведь, действительно, баг! В рантайме-то значение размера правильное!

126.jpg

Сволочь, вводит заблуждение! Пару часов удивлённо ломал башку и копался в справочниках. Думал, что это у меня глюки...
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...

Последний раз редактировалось min@y™; 19.12.2015 в 19:08.
min@y™ вне форума Ответить с цитированием
Старый 19.12.2015, 19:58   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Может отладчик чего-то цепляет еще или проводит свои выравнивания?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Структура DateTime, битовая структура prepare2die Помощь студентам 1 10.03.2015 13:32
Структура в Си CattcheR Помощь студентам 1 23.04.2012 10:47
структура в С 4eburator Помощь студентам 3 13.10.2010 18:16
структура euhenia Помощь студентам 3 16.04.2010 22:25