CCS 550 a vnorene struktury

Jaroslav Buchta jaroslav.buchta na hascomp.cz
Čtvrtek Březen 20 17:54:25 CET 2014


No ja prece jen radsi pouzivam typedef - funguje to univerzalne ve vsech 
normach C a C++ a je to takove prehlednejsi podle meho nazoru.

Dne 20.3.2014 17:00, Pavel Hudeček napsal(a):
> 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".
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list


---
Tato zpráva neobsahuje viry ani jiný škodlivý kód - avast! Antivirus je aktivní.
http://www.avast.com



Další informace o konferenci Hw-list