<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p><font face="Arial">Nějak mám dlouhé vedení....</font></p>
<p><font face="Arial">K čemu je size_t size; v strukturách?</font></p>
<p><font face="Arial">Jak se při použití x_ext v posledním zápisu
struktury dostanu na prvek a? Není mi jasné, co kompilátor
vytvořil z poslední definice x_ext, protože neřve. Ale x přece
není popis struktury, ale proměnná typu struct<br>
</font></p>
<p><font face="Arial"><br>
</font></p>
<pre class="moz-signature" cols="72">Martin Záruba</pre>
<div class="moz-cite-prefix">Dne 7.5.2024 v 23:27 Miroslav Šinko
napsal(a):<br>
</div>
<blockquote type="cite"
cite="mid:47c3281b-ac77-3b9a-c947-8a4a67857971@gmail.com">Inspirujte
sa napr. vo WinAPI. Nejdem nic kopirovat, napisem pointu:
<br>
<br>
struct{
<br>
size_t size;
<br>
int a;
<br>
int b;
<br>
}x;
<br>
<br>
Potom si niekto moze spravit:
<br>
struct{
<br>
size_t size;
<br>
int a;
<br>
int b;
<br>
int c;
<br>
int d;
<br>
}x_ext;
<br>
<br>
Aby nebolo treba copy/paste, tak takto:
<br>
struct{
<br>
struct x;
<br>
int c;
<br>
int d;
<br>
}x_ext;
<br>
<br>
Kazdy je povinny pri naplnani struktury vyplnit
size=sizeof(<moja_struktura>) a pri pouziti si skontrolovat
size, ci mozem pristupovat na premenne svojej struktury.
<br>
<br>
miro
<br>
<br>
<br>
On 7.5.2024 18:02, Martin Záruba wrote:
<br>
<blockquote type="cite">Mám soubor, třeba muj.h ve kterém je
deklarovaná struktura x, třeba
<br>
<br>
struct{
<br>
inta;
<br>
int b;
<br>
}x;
<br>
<br>
Soubor je pomocí include vložen do hlavního programu. A já bych
potřeboval, aby uživatel, který použije #include muj.h mohl do
té struktury vložit další prvky, takže struktura by se o tyto
prvky (které v ní nejsou definované) rozšířila. Vymyslel jsem
toto:
<br>
<br>
structstru {
<br>
inta;
<br>
int b;
<br>
#ifdefuser
<br>
user
<br>
#endif
<br>
};
<br>
<br>
A v uživatelském programu použít
<br>
<br>
#defineuser\
<br>
intc; \
<br>
intd;
<br>
<br>
Asi to vypadá jako divný požadavek, ale mě jde o to, aby
struktura x byl jeden prvek, který obsahuje jak mé, tak
uživatelem vytvořené členy.
<br>
<br>
Je na tom něco v nepořádku nebo to lze udělat líp?
<br>
<br>
<br>
-- <br>
<br>
Martin Záruba
<br>
<br>
<br>
<br>
_______________________________________________
<br>
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<br>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<br>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
<br>
<br>
</blockquote>
_______________________________________________
<br>
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<br>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<br>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
<br>
</blockquote>
</body>
</html>