Difference between revisions of "C programming/Caveats"
From Teknologisk videncenter
m (→Links) |
m (added Category:C using HotCat) |
||
Line 12: | Line 12: | ||
=Links= | =Links= | ||
*[http://www.eetimes.com/electronics-blogs/other/4394720/Sequence-points-?Ecosystem=embedded&cid=Newsletter+-+Whats+New+on+Embedded.com C Sequence points] | *[http://www.eetimes.com/electronics-blogs/other/4394720/Sequence-points-?Ecosystem=embedded&cid=Newsletter+-+Whats+New+on+Embedded.com C Sequence points] | ||
+ | |||
+ | [[Category:C]] |
Revision as of 07:39, 28 August 2012
This article contains C programming syntaxes and equations that behave in a strange way.
Logical && and logical ||
When using the logical AND (&&) or the logical OR (||) the expression is evaluated from left to right. Consider the following code.
i=1;
j=8;
if (( i == 0 ) && (( j++ ) > 0 )) {
...code...
}
The statement of the left side of && evaluates to false the rigth side of the statement is never evaluated - and j is never incremented.