两个C++ 的代码区别
代码一: 
 unsigned   a=1; 
 int   i; 
 for(i=-a;i <a+1;i++) 
 { 
          cout < <i; 
 } 
 cout < < "end! "; 
 /////////////////////// 
 代码二: 
 unsigned   a=1; 
 int   i; 
 for(i=-a;i <2;i++) 
 { 
          cout < <i; 
 } 
 cout < < "end! ";   
 哪位牛人能跟我说一下他们执行结果不同的原因吗
------解决方案--------------------因为 
 for( i=-a ; i <a+1 ; i++ ) 这里有a a是无符号数 ,所以是按无符号书比较 i=-1 无符号数就是0xffff.. ,所以不执行一下循环 
 看vc++ 生成的汇编会发现 
  jae 跳转地址 
 for( i=-a ; i <2 ; i++ )这里是按有符号书比较  
 生成的汇编时 
 jge 跳转地址