On Mon, 11 May 2009, Bob Beers wrote:

> On Mon, May 11, 2009 at 5:00 PM, RT Mistler <[email protected]> wrote:
> > Hi,
> >
> > I've been looking at some kernel modules trying to map an embedded
> > devices resources and while going through a driver, I encountered an
> > "if" test that employed "!!", example:
> >
> > if !!function_foo(args) {
> >  ...
> > }
> >
> > What does the "!!" do? (I'm familiar with a single "!")
>
> IIANM, it does "!" and then does "!" again, forcing boolean value,
> true or false.

  it's not clear why that would make any difference since 0 is boolean
false and everything else is boolean true.  so under what
circumstances would doing a double negation change execution
behaviour?  or am i missing something?

rday
--

========================================================================
Robert P. J. Day                               Waterloo, Ontario, CANADA

        Linux Consulting, Training and Annoying Kernel Pedantry.

Web page:                                          http://crashcourse.ca
Linked In:                             http://www.linkedin.com/in/rpjday
Twitter:                                       http://twitter.com/rpjday
========================================================================

Reply via email to