I'm a bit curious about how C and C++ handle data which isn't stored in variables, e.g:
int IE6_Bugs = 12345;
int Win_Bugs = 56789;
Yeah - everything clear. IE6_Bugs
has 123456 stored at it's specific memory address.
Then what about..
if ( IE6_Bugs + Win_Bugs > 10000 )
{
// ...
So C grabs the values of the two variables and adds them in order to compare the result to the int on the right.
But:
Does
IE6_Bugs+Win_Bugs
ever reach RAM? Or does the processor directly compare the values via its own cache?Or is, in the compiling process, the above if statement converted to something more "understandable" for the machine? (Maybe calculate
IE6_Bugs+Win_Bugs
first and store it in some variable,...)