<1> #include <AT89X51.H> unsigned int TD3; void w_r() { unsigned int em; em=TD3/1000;//em结果为230 em=TD3/100-(TD3/1000)*10;//em结果为30 em=TD3/10-(TD3/100)*10;//em结果为0 em=TD3%10; //em结果为0 while(1); } void main() { TD3=230; w_r(); }
<2> #include <AT89X51.H> unsigned int em; unsigned int TD3; void w_r() { em=TD3/1000;//em结果为0 em=TD3/100-(TD3/1000)*10;//em结果为2 em=TD3/10-(TD3/100)*10;em结果为3 em=TD3%10; //em结果为0 while(1); } void main() { TD3=230; w_r(); } 上面两个程序的em运算结果为什么不一样啊?第一个程序的em结果是怎么得出的啊? 我是用keil调试的! |