zoukankan      html  css  js  c++  java
  • 值的引用传递、数组作为函数参数

    按值传递(按副本传递):

    给函数传递变元(参数)时,变元(参数)不会直接传递给函数,二十先制作变元(参数)值的副本,存储在栈上,再使这个副本可用于函数,而不是使用初始值。

    例如:

     #include<stdio.h>
     void change(int);
     int main()
     {
        int num = 9;
        change(num);   //将num = 9的值复制一份给change中的变量,
        printf("num = %d
    ",num);//change中的值为副本,
         return 0;               //main函数中的num不随change函数中的num的改变而变
    
     }
    void change(int num)
    {
        num++;
    }

    运行结果:

    num = 9

      

    引用传递:

    指在调用函数时将实际参数的地址传递到函数中,那么在函数中对参数所进行的修改,将影响到实际参数

     #include<stdio.h>
     void change(int *);
     int main()
     {
        int num = 9;
        change( &num );   //传num的地址
        printf("num = %d
    ",num);
         return 0;               
    
     }
    void change(int * num)  //指针型变量,存放的是main函数中整型变量num的地址
    {
        *num += 1//*表示取地址,取这个地址的值,指向num的值,然后对它执行加一的操作
    }

       

    数组作为函数参数:

  • 相关阅读:
    [日常训练]FJ省夏令营day1
    [vijos1002][NOIP2005]过河
    [poj2446]Chessboard
    [bzoj1854][SCOI2010]游戏
    [模板]匈牙利算法
    [bzoj3670][2014湖北省队互测week2]似乎在梦中见过的样子
    笔记3-27
    笔记3-26
    笔记3-25
    Codeforces891C. Envy
  • 原文地址:https://www.cnblogs.com/18191xq/p/11774335.html
Copyright © 2011-2022 走看看