Size: a a a

2020 March 06

AB

Artöm Bakri Al-Sarmini in pro.cxx
Flower Surgeon
структура из шорта и чара?
Размер 4, выравнивание 2
источник

FS

Flower Surgeon in pro.cxx
Artöm Bakri Al-Sarmini
Размер 4, выравнивание 2
А, ну примерно такой ответ я и предполагал.
источник

DS

Dmitry Sokolov in pro.cxx
Хочется по typepunn'ить struct B:A{int a,b,c;} со struct C:A{int arr[3];}
источник

AB

Artöm Bakri Al-Sarmini in pro.cxx
Биткаст в руки
источник

AS

Anatoly Shirokov in pro.cxx
Dmitry Sokolov
Один модификатор доступа, гарантия abi
Но не гарантия непрерывного размещения
источник

FS

Flower Surgeon in pro.cxx
Artöm Bakri Al-Sarmini
Биткаст в руки
Юнион разве не проканает? типы-то одинаковые.
источник

AB

Artöm Bakri Al-Sarmini in pro.cxx
Flower Surgeon
Юнион разве не проканает? типы-то одинаковые.
По-хорошему это будет уб
источник

DS

Dmitry Sokolov in pro.cxx
Flower Surgeon
Юнион разве не проканает? типы-то одинаковые.
Не, хочется совсем плохого. Структуру со счётчиками пушить в инстанс с атоимик счётчиками зная только их число.
источник

AB

Artöm Bakri Al-Sarmini in pro.cxx
У T и T[N] нет common initial sequence
источник

FS

Flower Surgeon in pro.cxx
Artöm Bakri Al-Sarmini
По-хорошему это будет уб
Почему? С одной стороны int, int, int, с другой — int, int, int
источник

FS

Flower Surgeon in pro.cxx
Не будет там UB
источник

SE

Stanislav Ershov in pro.cxx
Flower Surgeon
Почему? С одной стороны int, int, int, с другой — int, int, int
It's undefined behavior to read from the member of the union that wasn't most recently written. Many compilers implement, as a non-standard language extension, the ability to read inactive members of a union.
источник

FS

Flower Surgeon in pro.cxx
Stanislav Ershov
It's undefined behavior to read from the member of the union that wasn't most recently written. Many compilers implement, as a non-standard language extension, the ability to read inactive members of a union.
А это разве об этом? Я имел в виду вот такую примерно структуру данных:

union {
 struct {
   int a;
   int b;
   int c;
 };
 int i[3];
};
источник

NF

Nikolay Filchenko in pro.cxx
Stanislav Ershov
It's undefined behavior to read from the member of the union that wasn't most recently written. Many compilers implement, as a non-standard language extension, the ability to read inactive members of a union.
А это касется прям всех типов? А то в C это, вроде как, было валидной конструкцией.
источник

AZ

Alexander Zaitsev in pro.cxx
источник

hm

hime mononoke in pro.cxx
Да уже понял, что чаты попутал.
источник

AB

Artöm Bakri Al-Sarmini in pro.cxx
Flower Surgeon
А это разве об этом? Я имел в виду вот такую примерно структуру данных:

union {
 struct {
   int a;
   int b;
   int c;
 };
 int i[3];
};
Это уб
источник

AB

Artöm Bakri Al-Sarmini in pro.cxx
Flower Surgeon
Почему? С одной стороны int, int, int, с другой — int, int, int
Это не так работает
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
для начала определить что такое сортированный массив размерноси n
источник

FS

Flower Surgeon in pro.cxx
Artöm Bakri Al-Sarmini
Это уб
Почему? У вас и структура, и массив, будучи по отдельности, разложены в памяти одинаково.
источник