Article View: pl.comp.lang.c
Article #1043Re: Operacje na bitach
From: Karpierz
Date: Thu, 29 Jan 1998 12:14
Date: Thu, 29 Jan 1998 12:14
42 lines
1821 bytes
1821 bytes
Marek Kotowski <mkot@imm.org.pl> napisal
> Karpierz wrote (w watku "Rezerwacja pamieci"):
[...]
> > Nie powiem wprost ale zostawie to w formie zagadki
>> dla wszystkich:
>
> > Prosze sprawdzic:
>
> > typedef unsigned int uint; // taka moja fanaberia
>
> > int a = ~0; // lub dowolna wartosc ujemna
> > uint b = ~0; //
>
> ....
>
> > printf ("\n%ld %ld", (long) a, (long) b);
>
> > Wydaje sie ze powinno to dac identyczne dwie wartosci,
> > prawda ?
>
> Nie wydaje sie. :-)
Nie zgodze sie :). Sa dwie rozne wartosci, ale _wydaje_ sie
(przynajmniej mnie), ze powinny byc identyczne.
Osobiscie w/w klopoty czy brak oczywistosci w rzutach
to zrodlo masy bledow i jest to jedna z niewatpliwych wad C.
> > Przeciez rzutujemy _jawnie_ zarowno a jak i b na long.
>
> Rzecz jest w promocji typu. Inaczej promowany do long
> jest typ int (znak jest powielany), inaczej typ
> unsigned int (znak nie jest powielany).
Ponawiam prosbe o odpowiedz jak to ujmuje standard ?
Jaka jest ogolna zasada przy tego typu sytuacjach ?
[...]
--
Pozdrawiam Adam Karpierz
mailto:karpierz@intertele.pl
http://www.intertele.pl/users/karpierz
Technical Details
Message-ID:
<01bd2caf$70afa4a0$8cbaccc2@karpierz.dyn.ml.org>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!ict.pwr.wroc.pl!not-for-mailReferences:
<34D0605D.5843@imm.org.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!ict.pwr.wroc.pl!not-for-mail From: "Karpierz" <karpierz@inter.intertele.pl> Newsgroups: pl.comp.lang.c Subject: Re: Operacje na bitach Date: 29 Jan 1998 12:14:26 GMT Organization: Technical University of Wroclaw, Poland Lines: 43 Message-ID: <01bd2caf$70afa4a0$8cbaccc2@karpierz.dyn.ml.org> References: <34D0605D.5843@imm.org.pl> NNTP-Posting-Host: ppp140.intertele.pl X-Newsreader: Microsoft Internet News 4.70.1161 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit