Re: !!, what is it?



"Kenneth Brody" <kenbrody@xxxxxxxxxxx> wrote in message
news:4324D57D.44516C35@xxxxxxxxxxxxxx
> Flash Gordon wrote:
> >
> > Cafer ÅzimÅYek wrote:
> [...]
> > > I think, C standarts says something about logical operations resusts;
> > > if the result is false, it's value is 0 (zero). if the result is true,
> > > it's value is non-zero (like -2, -1, 2, 3, ...). So, it must NOT be
> > > one. This difference has seen according to compiler or target
> > > platform.
> >
> > Incorrect. The result of any logical operator is *always* 0 or 1 and
> > this is defined by the standard. What probably has you confused is that
> > any non-zero value will act as true, so all the values you quote will
> > act as true. However, I repeat, the boolean operators will never return
> > any value other than 0 or 1 on *any* implementation.
> [...]
>
> Well, any C89 or later, I assume. I've worked on platforms (prior to
> 1989) where boolean expressions were 0 or -1.

You must have been programming in Basic!

No C implementation ever used -1 as the value of 0==0

One other explanation for this misunderstanding is that you may have been using
1 bit bitfields: it is implementation defined whether these have values 0 and 1
or 0 and -1. As far as I recall, C99 did not change that.

--
Chqrlie.


.



Relevant Pages

  • Re: Convert a binary value to unsigned decimal value
    ... attempted to target a C compiler at the platform :-) ... Which reminds me.... ...
    (comp.lang.c)
  • Re: creation of .lib from C or C++ code
    ... compiler and uC platform. ... As SOURCE code within some constraints yes. ... As Source code for ANY compiler/linker, ANY host platform, ANY target - ...
    (comp.arch.embedded)
  • Re: ASM vs HLL : absurd war
    ... platform dependent. ... may generate intermediate assembler source code for a second pass assembly. ... assembler language A has a single target; ... would be a compiler, or .Net. ...
    (alt.lang.asm)
  • Re: Just what makes an architecture "C Friendly"?
    ... platform that the C compiler runs on. ... We're talking about the target it compiles for. ... hand-compilation. ... It helps if the compiler is facile with the end ...
    (comp.arch.embedded)
  • Re: Just what makes an architecture "C Friendly"?
    ... platform that the C compiler runs on. ... We're talking about the target it compiles for. ... It helps if the compiler is facile with the end ... assembly language. ...
    (comp.arch.embedded)