关于while里边++i与i++的问题!

img

img

img

img


while条件中,++i可以正确运行;i++则输出结果异常,仅输出一个字符

输出没毛病
你条件中,当第一次是i 为0,先判断是否为回车
再判断 i++,注意,这里是先拿 i 确定是否为0,再++

而++i,是先++,后判断是否为0

优先级问题没搞明白
http://t.csdn.cn/fjECp
自己做的博客 不解可私

&&和||是截断与截断或,第一个条件能判定整个表达式了就不会执行剩下的,
比如

i=1;
if(2>1&&++i<0)
  printf("%d",i);  //i=1

if(2<1||i++>3)
  printf("%d",i);  //i=1

++a是指先把a+1,然后外面能用到的数字就是a+1。
a++意思是先用这个a的数值,然后a才被+1。
当你在一个运算式里使用自增运算符的时候就要考虑以上那些,只有单独使用自增运算符(比如for里面的)才不用考虑