Re: Poslání struktury na Ethernet

Jaroslav Buchta jaroslav.buchta na hascomp.cz
Neděle Říjen 22 10:37:10 CEST 2023


client.write((byte*)&DATA1, sizeof(tDATA1)); //pokud je delka myslena takto
Dne 22.10.2023 v 9:50 Martin Záruba napsal(a):
>
> pro zápis dat pomocí knihovny Ethernet.h používám příkaz 
> client.write((byte*)DATA, DELKA); protože pole DATA je uint16_t.
>
> Jenže já bych potřeboval, aby DATA byla struktura, typu
>
> struct tDATA1 { int16_t DATA[92]; int16_t DATA2[92]; }; struct tDATA1 
> DATA1;
>
> příkaz
>
> client.write((byte*)DATA1, DELKA);
>
> hlásí chybu
>
> Compilation error: invalid cast from type 'tDATA1' to type 'byte* {aka 
> unsigned char*}'
>
> Jak to napsat, abych mohl poslat strukturu a nemusel jí nejpre 
> zkopírvat pomocí strcpy do pole byte, protože pak to zabere 
> dvojnásobek paměti. (struktura je mnohem větší, než v příkladu)
>
> Neexistuje v C něco jako ABSOLUTE v Pascalu, kde dvěma proměnným 
> přiřadím stejné místo v paměti?
>
> -- 
>
> Martin Záruba
>
> _______________________________________________
> HW-list mailing list  -  sponsored bywww.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/20231022/cd5becea/attachment.htm>


Další informace o konferenci Hw-list