kerdesek

hoyuka hoya hoyuka at c2.hu
Wed Aug 31 09:56:15 CEST 2005


Szia!

Az uint8_t info[0]-ra szeretnek valaszolni.
Egy pelda:

typedef struct Lofasz {
  int size;
  char data[0];
};

Ezek utan egy Lofasz strukturat, amibe 1024 byte-ot lehet belepakolni, igy
lehet letrehozni:

Lofasz *lofasz=(Lofasz*)malloc(sizeof(Lofasz)+1024*sizeof(char));
lofasz->size=1024;  /* ezt ide beirhatod, ha itt van szukseg ra */
lofasz->data[10]='h';  /* igy lehet erteket adni a data tomb egy elemenek */

Es igy nincs ertelme letrehozni:

Lofasz lofasz;

Mert akkor a data tomb 0 hosszu lesz es  annak szerintem nem sok ertelme van.

Na nem tudom, hogy a typedef szintaktikajat barmely C fordito beveszi-e,
de szerintem a gcc igen.

udv.
hoyuka

Valenta Ferenc said:
>
> Hi!
>
> C kerdes:
> A Blaulogic-fele IRDA stack, irlmp.h fajl, 114 sortol:
> typedef struct IrLMP_Frame {
>    IrLMP_Head head;
>    union {
>      IrLMP_Ctl ctl;
>      uint8_t info[0];
>    } u;
> } IrLMP_Frame;
>
> Erre az IAR azt mondja, hogy:
> irlmp.h[118]: Error[Pe070]: incomplete type is not allowed
>
> Mi ezzel a baja pontosan? Mit jelent az info[0]? Nulla hosszu tomb?
> Nem ertem :(
>
> Tovabba: kene M3x6 torx vagy imbusz feju csavar, hol lehet
> ilyesmit kapni? Meg tavtarto is kene, 14mm hosszu, egyik vegen M3 5mm
> csavar, masik vegeben M3 csavarnak menet.
>
> --
> Valenta Ferenc <ferenc.valenta at vhl.hu>  Volcano/Mentor Graphics
> "My love is REAL, unless declared INTEGER"
>
>
> -----------------------------------
>  Szponzorunk: http://tonerbolt.hu/
>

-------------------------------------
Tele van a postaládája?  C2MAIL 30 MB e-mail tárhely ingyen! 
http://mail.c2.hu




More information about the Elektro mailing list