C signed, unsigned
Fuzesi Arnold
arno at externet.hu
Fri Sep 30 20:49:01 CEST 2005
----- Original Message -----
From: "Palasik Sandor" <palasik at mail.datanet.hu>
To: <elektro at tesla.hu>
Sent: Friday, September 30, 2005 8:23 PM
Subject: Re: C signed, unsigned
> > settimer(TMR_IGNDLY,cfg.activation_state?cfg.ignactivation_type:(-1));
> >
> > Erre meg nem:
> >
> > void settimer(int ,slong );
> > settimer(TMR_IGNDLY,cfg.activation_state?cfg.ignactivation_type:(-1L));
> Tudni kéne, hogy az a cfg.ignactivation_type milyen típusú. Arra
tippelnék,
Igen, uint.
> hogy unsigned. Aztán vagy int -> unsigned -> signed long, vagy pedig
long ->
> signed long konverzió lesz belőle, attól függően, hogy a -1 int vagy long.
> Az első esetnél meg makog, mellesleg tippem szerint el is rontja, mert a ?
:
> operátort még int szélességben számolja és csak utána egészíti ki longra.
Hmmm...logikusnak tűnik hirtelen.
De el nem rontja. Mert a -1 valóban -1-kent kerul be akkor is ha -1-nek
irom, es nem -1L-nek.
Legalább is a progi jól működött ahogy néztem.
Ha elrontana akkor a -1-ből gondolom 255 lenne. Azt meg eszrevettem volna...
Node meglesem majd...Asszem már csak jövőhéten.
Bekopiztam a leveled a forrasba, igy csak nem felejtem el.
Arnold
More information about the Elektro
mailing list