C语言函数参数

函数参数

C语言的函数的参数根据其传递的方式大致可分为两类,一是形参,二是实参(不同的地方对此的定义可能有所不同)。那什么是C语言函数的形参和实参呢?鄙人根据一些经验,对此进行了通俗的总结,可供参考,如下。

C语言形参

形参,即在C语言函数参数传递的过程中,传递的是变量值的一个拷贝,并不会对其存储在内存中的地址一起引用,也就是说,形参经过函数中的程序代码之后,不管有没有被重新赋值,在函数执行之后,该变量(作为参数的变量)的值是不会发生改变的。示例代码如下。

C语言形参实例

y的值并没有被修改,输出的仍然为1:

#include <stdio.h>

void copyArg(int x){
    x++;
}

int main() {
    int y = 1;
    copyArg(y);
    printf("%d \n", y);
    return 0;
}

C语言实参

实参,正好与形参相反——实参的值在函数内被修改的话,那么在函数之外的值也会发生改变。这是因为实参作为参数传递值的方式是该变量(参数)的引用,该如何理解这个引用呢?个人的理解方式是“指向变量内存地址的链接”,仅供参考!

C语言实参实例

注意实参的定义方式,一般为指针的方式,其中“&”是寻址符号:

#include <stdio.h>

void quoteArg(int *y){
    *y = *y +1;
}

int main() {
    int z = 2;
    quoteArg(&z);
    printf("%d \n", z);
    return 0;
}

免责声明:内容仅供参考。


全栈后端 / C语言教程 :


















Copyright © 2022-2024 笨鸟工具 x1y1z1.com All Rights Reserved.