函数调用顺序
在VC中,函数的调用顺序是从右到左,以下c程序为例
#include<stdio.h>
int judge(int a,int b);
void main()
{
int x;
scanf("%d",&x);
printf("%d\n",judge(x,++x));
}
int judge(int a,int b)
{
int z;
if(a==b)
{
z=1;
}
else z=0;
return z;
}
输入一个数x,通过调用judge()函数,把x和x++的值分别传进ab变量,并判断大小。
如果函数调用顺序是从左到右那么a的值理应比b小1,那么就不回相等并把1的值赋值给z,反之,如果从右往左调用,那么x先执行加加,那么x的值理应相等,z就会为1。下图运行结果
结果说明在VC中是由右到左调用。
个人pow()函数内部思路
原函数double pow(double x,double y)
作用:求x的y次方
#include<stdio.h>
void main()
{
double x,y,n,v;
scanf("%lf%lf",&x,&y);
v=1;
for(n=1;n<=y;n++)
{
v*=x;
}
printf("%lf\n",v);
}
运行结果如下