Signed/unsigned v C (was Re: arduino - povikendovy povzdech)

Pavel KREJCI krepa76 na gmail.com
Pondělí Březen 23 14:48:29 CET 2015


Takhle to bude delat peknou neplechu :) :)
PK

Dne 23. března 2015 14:37 Zuffa Jan <ZuffaJ na cgc.sk> napsal(a):

> A co takto:
>
> int wirte(char *data, int bytes)
> {
>     data = data+bytes;
>     for(int I = 0; I < bytes; i++)
>     {
>         posli(*(data--));
>     }
> }
>
> :)
>
> j.
>
> -----Original Message-----
> From: Hw-list [mailto:hw-list-bounces na list.hw.cz] On Behalf Of Petr
> Weissar
> Sent: Monday, March 23, 2015 1:49 PM
> To: HW-news
> Subject: Re: Signed/unsigned v C (was Re: arduino - povikendovy povzdech)
>
> Napadá mne třeba konstrukce:
>
> int write(char *data, int bytes)
> {
>    int i = bytes;
>    do
>    {
>      i--;
>      neco(data[i]);
>    } while (i);
>    return bytes;
> }
>
> Petr
>
> Dne 23. 3. 2015 v 13:33 Ladislav Vaiz napsal(a):
> > Jan Waclawek napsal(a):
> >> Mimochodom, v
> >>
> >> write(char* data, int bytes)
> >> nevidim dovod pre ten druhy parameter nepouzit typ z <stdint.h>,
> >> alebo (ak silou-mocou niekto chce byt pre-C99-kompatibilny) tak
> >> minimalne unsigned.
> >>
> >
> > No já na něco podobného ohledně unsigned narazil. Řekněme, že data
> > potřebuju někam poslat obráceně. Tak začnu psát:
> >
> > int write(char *data, int bytes){
> >     int i;
> >     for (i = bytes - 1; i >= 0; i--){
> >         neco(data[i]);
> >     }
> >     return bytes;
> > }
> >
> > Když budu mít bytes unsigned, tak bude problém s přiřazením do i. Když
> > dám unsigned i, tak bude vždy >= 0 a po přetečení i se asi budu divit.
> > Jedině použít hrůzu jako:
> >
> > unsigned i;
> > for (i = bytes; i >0; i--){
> >     neco(data[i-1]);
> > }
> >
> > Nebo máte někdo lepší tip jak kombinovat signed/unsigned například při
> > procházení
> > https://developer.gnome.org/glib/stable/glib-Pointer-Arrays.html#GPtrA
> > rray
> > ? Nejde mi o pole delší než 2^31.
> >
> > L.
> >
> > _______________________________________________
> > 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
> _______________________________________________
> 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/20150323/39b82631/attachment.html>


Další informace o konferenci Hw-list