有这样一段程序 #include <stdio.h> #define SQ(y) ((y)*(y)) main(){ int i=1; while(i<=5) printf("%d
",SQ(i++)); } 在谭浩强的C教材中(大约是2001年版),用的应该是TuboC2.0,给吃的结果是 2 12 30
我在里linux中(Fedora 10),gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC) 结果是 1 9 25
其差别在于i的增值的点。 请问这种差别正常吗?什么原因呢?
|