for语句中i++和++i是一样的吗

如题所述

for( ; ; ++i)

在这种情况下,++i 和 i++是等价的。

一般地,对于 i++ 或者 ++i ,当其本身构成一个语句的时候,没有明显的区别。

追问

既然这样的话,那对字符串进行复制的话用语句for(i=0;t[i]=s[i];i++)的话s[0]就不能复制到t[0]了
是这样吗

追答

复制字符串的话,应该可以使用这种方法。

for(i=0;t[i]=s[i];i++);

相当于

for(i=0;s[i];i++)t[i]=s[i];

是可以实现字符串复制的。

追问

为什么
for(i=0;t[i]=s[i];i++);
相当于
for(i=0;s[i];i++)t[i]=s[i];

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-02-07
用i++就好了,用在for中是一样的
i++先运行表达式再自增
++i先自增再运行表达式追问

既然这样的话,那对字符串进行复制的话用语句for(i=0;t[i]=s[i];i++)的话s[0]就不能复制到t[0]了
是这样吗

追答

中件放条件,不是放表达式的,这样写会判断t[i]是不是true

相似回答