函数

作者在 2008-10-25 10:14:06 发布以下内容

1.函数的定义、函数的调用、函数的声明

2.函数的定义不能嵌套,函数的调用能嵌套

3.实参,形参

4.形参所占的内存在函数调用结束之后被释放,即形参值没了

5.(1)实参传给形参是单向的传递,“值传递”

  即函数调用时,实参传给形参后,调用结束形参释放,而实参保持原来的值,

  所以形参的改变不能改变实参的值

  #include <stdio.h>
  main()
  {int swap(int a,int b);

   int x=7,y=11;
   printf("x=%d,\ty=%d\n",x,y);
   printf("swapped:\n");
   swap(x,y);
   printf("x=%d,\ty=%d\n",x,y);
  }
  int swap(int a,int b)
  { int temp;
    temp=a; a=b; b=temp;
   
}
 
结果:x=7,y=11

       x=7,y=11

虽然形参的值进行了交换,但只传递是单向的

(2)地址的传递,是双向的传递

#include<stdio.h>
int swap(int *p1,int *p2)
{ int p;
  p=*p1;
  *p1=*p2;
  *p2=p;
}
main()
{int a,b;
  scanf("%d,%d",&a,&b);
  printf("a=%d,b=%d\n",a,b);
  printf("swapped:\n");
  if(a<b) swap(&a,&b);
  printf("a=%d,b=%d\n",a,b);
}
结果:1 2

     a=1,b=2

     a=2,b=1

6.函数的递归调用(调用函数是直接或间接的调用函数自己本身)

7.内部函数(只能被本文件的函数调用的函数,在定义是加staic)

8.外部函数(在函数的最左端加extern,可以省略)

C语言 | 阅读 3784 次
文章评论,共0条
游客请输入验证码
浏览77312次