Talk About Network

Google





Programming > C - C++ Learning > Re: [C and C++]...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 2 of 12 Topic 4095 of 4400
Post > Topic >>

Re: [C and C++] && Operator precedence

by Ulrich Eckhardt <doomster@[EMAIL PROTECTED] > Apr 7, 2008 at 10:34 PM

Aggro wrote:
> I would like to know the answer to this for both C and C++ as I use both
> languages (usually in differen projects).
> 
> Assume the code
> if( A && B )
> 
> Normally A is executed before B 

No. If A yields false, B is not executed at all. This is called
short-circuit evaluation. Note that in C++ you are actually able to
override operator && and then it's a normal function call which means that
both arguments are evaluated, though their order is unspecified.


> But recently I got second hand information that the execution order is
> not quaranteed. E.g. B could be executed before A by some compilers.

Not by conforming ones, due to the short-circuit rule.

> Different execution order could cause e.g. application to crash if we
> first test is the pointer valid and then call a function for that
pointer:
> if( p && p->func() )

This code is fine.

I would try to limit use of this feature though, because it has rather
surprising semantics. Above example is IMHO okay though.

Uli
 




 12 Posts in Topic:
[C and C++] && Operator precedence
Aggro <spammerdream@[E  2008-04-07 20:24:45 
Re: [C and C++] && Operator precedence
Ulrich Eckhardt <dooms  2008-04-07 22:34:34 
Re: [C and C++] && Operator precedence
Hal Vaughan <hal@[EMAI  2008-04-08 00:20:31 
Re: [C and C++] && Operator precedence
Jack Klein <jackklein@  2008-04-07 21:48:22 
Re: [C and C++] && Operator precedence
Philip Potter <pgp@[EM  2008-04-08 08:55:35 
Re: && Operator precedence
=?ISO-8859-1?Q?Andr=E9_Ca  2008-04-08 04:06:10 
Re: && Operator precedence
Philip Potter <pgp@[EM  2008-04-08 13:21:46 
Re: [C and C++] && Operator precedence
Philip Potter <pgp@[EM  2008-04-07 23:12:16 
Re: [C and C++] && Operator precedence
Francis Glassborow <fr  2008-04-07 23:42:49 
Re: [C and C++] && Operator precedence
Anand Hariharan <znvyg  2008-04-08 04:48:45 
Re: [C and C++] && Operator precedence
Francis Glassborow <fr  2008-04-08 09:15:35 
Re: [C and C++] && Operator precedence
Anand Hariharan <znvyg  2008-04-08 16:00:12 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
localhost-V2008-12-19 Wed Jan 7 12:58:00 PST 2009.