Dmitry E. Oboukhov -> debian-russian@lists.debian.org @ Thu, 18 Nov 2004 16:08:43 +0300:
>> > в смысле компилятор будет ругаться на применение любого индекса с ним? >> > или что? >> >> Не обязан. >> >> Эту конструкцию применяют обычно в конце структур заголовок - данные, >> чтобы можно было сослаться на начало данных без извращений с адресной >> арифметикой. DEO> то есть что-то вроде DEO> struct DEO> { DEO> unsigned char byte[0]; DEO> int data1; DEO> char data2; DEO> ... DEO> } a; DEO> чтобы обращаться к a.data1 как к a.byte[0], a.byte[1]... ? Нет. struct { int data1; char data2; unsigned char byte[0]; } и дальше в памяти расположены собственно данные из этого byte, а сколько их - знает только приложение. DEO> и что компилятор ТАКОЕ допускает?! Ну да. Пол-винды так написано, например. -- Artem Chuprina RFC2822: <[EMAIL PROTECTED]>, FIDO: 2:5020/122.256, Jabber: [EMAIL PROTECTED]