函数调用时参数传入的顺序 小谈

作者在 2007-09-01 08:13:00 发布以下内容

在函数的调用时需要注意参数的传入的顺序.我可以给一个例子:
#include<stdio.h>
#include<conio.h>
int main(void)
{
  int i=0;
  clrscr();
  printf("%d,%d",i++,i++);
  getch();
  return 0;
}
printf()函数是我们在编程时用得比较多的函数.大家不妨运行一下,得出程序的结果.(结果在此不予给出)
从结果可以看出参数的传递相当于:printf("%d,%d",1,0);也就是说先从最后一个参数开始传递.
可以得出程序中printf()的执行过程:printf("%d,%d",i++,i++);/*这时i==0*/开始从最后一个参数传递==>>
printf("%d,%d",i++,0);/*这时i==1*/然后传递第二个参数==>>printf("%d,%d",1,0);/*这时i==2*/==>>参数传递完毕.

如果大家认为这是某个函数的特定的参数传递形式,我可以再举一个例子:
#include<stdio.h>
#include<conio.h>
void function(int,int,int);
int main(void)
{
  int num=0;
  clrscr();
  function(num++,num++,num++);
  getch();
  return 0;
}
void function(int num1,int num2,int num3)
{
  printf("num1=%d\nnum2=%d\nnum3=%d\n",num1,num2,num3);
  return ;
}
结果大家可以去参详一下.
总之,大家在编程的时侯注意一下就好.

我的C语言编程经验 | 阅读 2316 次
文章评论,共0条
游客请输入验证码