数据结构。可以把i++换成++i吗?i++和++i用法上有什么区别?什么时候用i++,什么时候用++i?

如题所述

i++是先取i的值做运算,然后再自加1,++1是自加1然后再参与运算。
本例中可以用++i,代替i++,i并没有参数运算,习惯上使用i++。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-09-18
i++; 在当前使用变量时,i值不变,用完再加1,对于for循环中的那个i++仅表示进行加1这个计算,实际达到执行完这个语句后i值加1的效果;
++i; 在当前使用变量时,i值预先做加1,对于for循环中的i++表示要给i加1,这里替换成++i之后效果是一样的,都是执行完此句以后i值加1的效果。
对于表达式中的i++和++i可以这么理解,举例说明:
if ( i++ ) {}相当于if ( i ) {} i++;
if ( ++i ) {}相当于i++; if ( i ) {}
如果自己对表达式中使用这两种写法搞不清楚,可以避免这样的写法
如果别人写的表达式,可以改造一下再读,
比如: i=0; a=(i++)+50; 等同于i=0; a=i+50; i++;
而:i=0; a=(++i)+50; 等同于i=0; i++; a=i+50;本回答被提问者采纳