范例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! = %.0lf\n",ftr(n));
要么
printf("x! = %.0lf\n",ftr((int)x)); //directly cast inside function parameters
最佳答案
t+=npw(x,i++)/ftr(i++);
由于未指定两个增量操作的执行顺序,因此可能无法执行您期望的操作。即您不知道哪个函数将获取递增的i
,哪个函数将获取递增的i
作为参数。
此外,无论先递增i
哪个,它都会与前一段完全不同,在先前的代码中,i
仅递增一次。
其他示例看起来正确。最后两段代码仅在语义上有所不同。