C中的“中间变量”(或叫临时变量)
C中所有的中间变量,都是寄存器充当的,是编译后汇编层面的概念,所以,此“变量”非彼变量,c不能操作他。
例如:强制转换时,会产生中间变量,请看源代码与汇编代码的对照。
int main() { int i; char c;
i = 1;
c = (char) i ; } | …… _i$ = -8 _c$ = -4 …… mov DWORD PTR _i$[ebp], 1
mov al , BYTE PTR _i$[ebp] mov BYTE PTR _c$[ebp], al …… |
这个 al 就是中间变量。