On Fri, Dec 13, 2002 at 14:32:40 +0200, Ruslan Ermilov wrote:
> Pardon my ignorance here, but the following fragment
> returns -1, doesn't it?
>
> #include <stdio.h>
> void
> main(void)
> {
> int i;
>
> i = (unsigned char)1 - (unsigned char)2;
> printf("%d\n", i);
> }It very depends on compiler, i.e. does it implements "value preseving" or "unsigned preserving" for 'char' type conversions. Or ANSI C vs. common C mode. Better be safe for both. Read 6.10.1.1 section here: http://wwwrsphysse.anu.edu.au/doc/DUhelp/AQTLTBTE/DOCU_067.HTM -- Andrey A. Chernov http://ache.pp.ru/
msg48645/pgp00000.pgp
Description: PGP signature
