Pretypovani ukazatele struktury na bajt

Libor Konečný support na mikrovlny.cz
Neděle Únor 23 17:40:59 CET 2020


Tak sizeof je 8
a zajimala by me ta spravna konstrukce, je tajna nebo muzete prozradit ?


LK

Dne 23.2.2020 v 17:30 Jaroslav Buchta napsal(a):
> To  je zajimava otazka, ale v kazdem pripade by to snad melo naplnit 
> aspon ten UINT16... Pokud nejde o nejakou exotickou architekturu.
> Ale jinak je to asi vzorova ukazka konstrukce, jaka by se zasadne 
> pouzivat nemela.
>
> Dne 23.02.2020 v 17:25 Jindroush na seznam.cz napsal(a):
>> Jaký je sizeof té struktury?
>>
>> J.
>>
>> ---------- Původní zpráva ----------
>> Od: Libor Konečný
>> Datum: 23. 2. 2020 v 17:14:03
>> Předmět: Pretypovani ukazatele struktury na bajt
>>
>> Zdravim osazenstvo, predevsim zdejsi programatory.
>>
>> S novym kompilatorem (ten stary to nejakou zahadou umel) resim
>> pretypovani ukazatelu.
>>
>> Mam funkci (zjednodusene)
>> void funkce (UINT8 * from)
>> {
>> *from++=0x01 ;
>> *from++=0x02 ;
>> *from++=0x03 ;
>> *from++=0x04 ;
>> *from++=0x05 ;
>> *from=0x06 ;
>> }
>>
>>
>> A pak strukduru
>> struct {
>> UINT16 magic;
>> DWORD ident;
>> } hdr;
>>
>> A potrebuji ji naplnit,
>> tedy volam
>> funkce ((UINT8*)&hdr);
>>
>> ale kompilator to naplni vzdy jen jednim znakem
>>
>> tedy vysledek je ze hdr.magic ma jen prvni bajt spravny.
>>
>> Pokud pouziji strukturu
>> struct {
>> UINT8 pole[6];
>> } hdr;
>>
>> Pak se naplni vsech 6 bajtu spravne.
>>
>> Jak ji volat spravne aby se struktura prepisovala bajt po bajtu ?
>> (little a big endian zanedbejme)
>> Je zvlastni, ze stary kompilator fungoval spravne.
>>
>> Dekuji za nakopnuti.
>> LK
>>
>>
>>
>>
>> _______________________________________________
>> HW-list mailing list - sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>>
>> _______________________________________________
>> HW-list mailing list  -  sponsored bywww.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>
>
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list

------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20200223/d8d5925b/attachment.html>


Další informace o konferenci Hw-list