#include <stdio.h> #include <stdlib.h> int main() { int a,b; a=10; b=12; a=a+b-(b=a); printf("%d\t %d\n",a,b); return 0; }
这一段代码不同的编译器会给出不同的结果。在code block下实现了a b值得交换。在VS下a b最后结果相同均为a.
code block编译时给出过警告b可能未定义。类似这样的代码尽量避免。因为可能得不到预期的值。无论用多少个变量,程序的正确执行才是第一位的!