Vyreseno: Pretypovani ukazatele struktury na bajt

Jaroslav Buchta jaroslav.buchta na hascomp.cz
Neděle Únor 23 21:21:14 CET 2020


Opravdu by me zajimalo, proc ta puvodni verze nefungovala (bez ohledu na 
2B vyplne)
A opravdu bych toto reseni nepovazoval za dobre, ono to zarovnavani dle 
architektury CPU casto dava nejaky smysl... Kdyby se ten zdrojak nahodou 
nekdy nekam rozsiril a mel se portovat na neco, co treba neumi 
nezarovnany pristup...


Dne 23.02.2020 v 21:15 Libor Konečný napsal(a):
> Perfektni, diky funguje to.
> Bez atributu  to gcc pretypovat vse na 4 bajty a diky indianum se mi 
> posledni dva bajty prehazovaly za nesmysl.
> S tim packed to funguje jako za starych casu.
> Jeste jednou diky.
> LK
>
>
> Dne 23.2.2020 v 20:25 Miroslav Mraz napsal(a):
>> Sice PICy neumím, ale kouknul jsem do manuálu a mělo by fungovat i
>> struct hdr_s {
>>   uint16_t magic;
>>   uint32_t ident;
>> }__attribute__((packed))  hdr;
>> s délkou 6 bytů. Připadá mi to, že je to stejně nějak ohnuté gcc. 
>> Tohle pro vás bude asi lepší, protože z náznaku jak s tím pracujete 
>> je vidět, že nakonec bude záležet i na pořadí položek ve struktuře a 
>> nakonec i na pořadí bytů. Mám takový dojem, že je to Velký Indián a 
>> pořadí bude opačné než v mém výpisu.
>>
>> Mrazík
>>
>> Dne 23. 02. 20 v 19:41 Libor Konečný napsal(a):
>>> Kompilator je  XC32 + MPLABX, akorat se v tom teprve ucim.
>>>
>>> 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 by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list




Další informace o konferenci Hw-list