首页后端开发ASP.NETc语言函数调用的三种方式是什么

c语言函数调用的三种方式是什么

时间2024-01-31 03:13:03发布访客分类ASP.NET浏览1025
导读:收集整理的这篇文章主要介绍了c语言函数调用的三种方式是什么,觉得挺不错的,现在分享给大家,也给大家做个参考。c语言中函数调用的三种方式是:1、传值调用,就是把一个变量的值传递给函数的形式参数;2、引用调用,就是将变量的地址直接传入函数;3、...
收集整理的这篇文章主要介绍了c语言函数调用的三种方式是什么,觉得挺不错的,现在分享给大家,也给大家做个参考。

c语言中函数调用的三种方式是:1、传值调用,就是把一个变量的值传递给函数的形式参数;2、引用调用,就是将变量的地址直接传入函数;3、传地址调用,就是通过指针来实现的,把变量的引用传入函数。

本文操作环境:Windows7系统、C11版、Dell G3电脑。

在C语言中函数调用的三种方式分别是:传值调用,引用调用和传地址调用。

1、传值调用

传值调用,就是把一个变量的值传递给函数的形式参数,实际就是用变量的值来新生成一个形式参数,形参运算后在把值返回。

函数中改变的值是不能影响到外界的,因而在函数里对形参的改变不会影响到函数外的变量的值。

下面通过代码示例来理解一下:

#includestdio.h>
  void myswap(int x, int y)  {
          int t;
          t=x;
          x=y;
          y=t;
  }
  int main()  {
          int a, b;
          PRintf("请输入待交换的两个整数:");
          scanf("%d %d", &
    a, &
    b);
          myswap(a,b);
      //作为对比,直接交换两个整数,显然不行      printf("调用交换函数后的结果是:%d 和 %d\n", a, b);
          return 0;
  }
    

运行:

【视频教程推荐:C语言教程】

解析:

没有交互成功原因是:使用传值调用,只在形参上改变了数值,没有在实参上改变数值。

2、传地址调用

传地址调用,就是将变量的地址直接传入函数,它把一个变量的地址赋给函数里形式参数的指针,使指针指向真实的变量的地址,因为对指针所指地址的内容的改变能反映到函数外,也就是能改变函数外的变量的值。

下面通过代码示例来理解一下:

#includestdio.h>
  void myswap(int *p1, int *p2)  {
          int  t;
          t=*p1;
          *p1=*p2;
          *p2=t;
  }
  int main()  {
          int a, b;
          printf("请输入待交换的两个整数:");
          scanf("%d %d", &
    a, &
    b);
          myswap(&
    a,&
    b);
      //交换两个整数的地址      printf("调用交换函数后的结果是:%d 和 %d\n", a, b);
          return 0;
  }
    

运行:

解析:

交互成功的原因是:使用传地址调用,利用指针改变了原来的地址,所以实参就交换了。

3、引用调用

引用调用实际是通过指针来实现的,把变量的引用传入函数;能达到使用地址调用的效果,可是使用方式如传值调用,函数可以对其值进行修改。

下面通过代码示例来理解一下:

#includestdio.h>
    void myswap(int &
    x, int &
y){
        int t;
        t=x;
        x=y;
        y=t;
}
  int main(){
          int a, b;
        printf("请输入待交换的两个整数:");
        scanf("%d %d", &
    a, &
    b);
        myswap(a,b);
      //注意:这里调用方式与传值调用一样,直接以变量a和b作为实参交换    printf("调用交换函数后的结果是:%d 和 %d\n", a, b);
        return 0;
}
    

运行:

解析:

交互成功的原因是:使用引用调用,引用是直接改变两个实参变量a,b的值,所以就交换了。

以上就是c语言函数调用的三种方式是什么的详细内容,更多请关注其它相关文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

c语言

若转载请注明出处: c语言函数调用的三种方式是什么
本文地址: https://pptw.com/jishu/593405.html
详解Node.js中Buffer对象的操作(创建、读写) 数据结构的学习之使用JavaScript实现链表的操作(实例详解)

游客 回复需填写必要信息