示例1:
while(npw(x,i)/ftr(i)>0.00001) {
t+=npw(x,i)/ftr(i);
i++; //normal increase i
}
或
while(npw(x,i)/ftr(i)>0.00001)
t+=npw(x,i++)/ftr(i++); //increase i inside function's parameters
示例2:(x是"浮动")
int n=(int)x; //normal cast
printf("x! = %.0lfn",ftr(n));
或
printf("x! = %.0lfn",ftr((int)x)); //directly cast inside function parameters
t+=npw(x,i++)/ftr(i++);
可能不会执行您期望它执行的任何操作,因为两个增量操作的执行顺序未指定。也就是说,您不知道哪个函数将获得递增的i
,哪个函数将得到递增的i
作为参数。
此外,无论哪个i
先递增,它都将与前一段代码完全不同,其中i
只递增一次。
其他的例子看起来是正确的。最后两段代码仅在语义上不同。