ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
23 ноября
1020700 Топик полностью
fk0, легенда (24.07.2020 17:18, просмотров: 620) ответил RxTx на Ты написал в прошлом сообщении (цитирую твои слова): "а с некой абстрактной моделью вычислительной машины заданной СТАНДАРТОМ ЯЗЫКА". Ты выражение "стандарт языка" понимаешь как-то не так как все люди? Какие еще "оптимизаторы", какие "кодогенераторы" в стандарте языка C? Вот я тебя и прошу подтвердить твою же фразу. Мне еще в 2-3х сообщениях требовать с тебя цитату из стандарта? Или не будем валять дурака, и ты уже все понял, что по стандарту языка C прав именно
ISO/IEC 9899:201x, разделе 6.3.2.3 Pointers, параграф 7: 
A pointer to an object type may be converted to a pointer to a different object type. If the resulting pointer is not correctly aligned for the referenced type, the behavior is undefined. Otherwise, when converted back again, the result shall compare equal to the original pointer. When a pointer to an object is converted to a pointer to a character type, the result points to the lowest addressed byte of the object. Successive increments of the result, up to the size of the object, yield pointers to the remaining bytes of the object

Тип, лежащий в "упакованной структуре" не может являться типом int (потому, что тип int не может лежать по нечётному, невыровненному адресу). И вот этот новый неведомый тип (для которого в компиляторе тип отсутствует) привели к int. Дальше компилятор вправе сгенерировать код, который сделает system("format C:").

[ZX]