CCS 550 a vnorene struktury
Pavel Hudeček
edizon na seznam.cz
Čtvrtek Březen 20 17:00:29 CET 2014
Nakonec tam mám tohle:
struct __attribute__((packed)) {
struct __attribute__((packed)) {
uint32_t ipInd; // index pridelene IP
uint8_t rozInd; // index rozsahu
uint8_t st; // stav 0 volno/hotovo, 1-5 offer-iddle, 255 prave zalozeno
uint32_t xid; // Transaction Identifier
} dat[DHCPT_poc];
uint32_t ind; // ind. pro prenos z parse_msg do parse_opt =DHCPT_poc neplatny
} dhcpTmp;
Tím jsem se úchylárnám při manipulaci s názvy struktur vyhnul:-)
PH
Od: Tomáš Hamouz
Jsou to dva odlišné namespacy.
Kompilátor se v tom vyzná, ale také to považuju za úchylné a
nepoužívám to. Když už potřebuju definici struktury (např pokud její
součástí má být ptr na ni samotnou), píšu to
typedef struct _nazev {
struct _nazev * ptr_next;
...
} nazev;
Tomáš
> Je to sice úchylný, ale funguje to... ovšem dost mě fascinuje, že
> "struct x {...} x;" vede k x jako identifikátoru typu - to mi přijde ještě úchylnější.
> PH
> Od: Jan Waclawek
> Neviem, ci to je v nejakej referencnej prirucke napisane dostatocne
> polopatisticky, a momentalne sa mi to nechce hladat, ale hrubo povedana
> pointa je, ze ak v C napisete "struct x {...}", definujete tym
> identifikator ktory sa vola "struct x" a nie "x".
Další informace o konferenci Hw-list