首页 > 其他分享 >嵌入式-C语言基础:理解形参和实参的区别

嵌入式-C语言基础:理解形参和实参的区别

时间:2022-10-20 22:15:14浏览次数:55  
标签:函数 形参 int C语言 地址 test 实参

#include<stdio.h>


//实参:函数原型中声明函数后面带的参数
int test(int x)//函数原型
{
    //函数体
    printf("test里面的x地址=%p",&x);
    return x;
}

//变量的要素:变量名、变量类型、值、地址

int main()
{
    
    int x=7,y=0;
    //实参:调用函数的时候调用的参数,x
    printf("main函数里x的地址=%p",&x);
    putchar('\n');
    y=test(x);
    return 0;
}

 

输出结果

main函数里x的地址=000000000061FE18
test里面的x地址=000000000061FDF0

可以看出形参和实参地址是不一样的,但是形参和实参的其它三个变量的要素都是一样的,但是他们的地址不同,所以不是同一个变量。

形参声明周期:在栈上开辟内存,当函数被调用的时候才会开辟内存,调用完成后释放内存。

 

标签:函数,形参,int,C语言,地址,test,实参
From: https://www.cnblogs.com/zxtang/p/16811487.html

相关文章

  • 嵌入式-C语言基础:二维数组
    #include<stdio.h>intmain(){intarray[2][3]={{1,2,3},{4,5,6}};for(inti=0;i<2;i++){for(intj=0;j<3;j++){prin......
  • 【C语言】结构体基础应用
    ......
  • 【C语言】第一个C语言程序代码分析
    在上一篇中我们已经创建了第一个C语言程序,接下来我们来分析一些此代码。1. #include<stdio.h>#include是C语言的预处理指令之一。在代码区域单独写出printf("hell......
  • 【数据结构/C语言】用链栈对整数进行升序排序
    #pragmawarning(disable:4996)#include<stdio.h>#include<stdlib.h>typedefintElemtype; typedefintStatus;typedefstructStack*SqList;typedefstructSt......
  • c语言—操作符篇—笔记
    这章有很多要记得东西,比如操作符属性表(未附),真的需要记忆。操作符1.分类算术操作符移位操作符位操作符赋值操作符单目操作符关系操作符逻辑操作符条件操作符逗号表达......
  • 【C语言】野指针
    ......
  • 【C语言】以三子棋为例来写一个多子棋小游戏吧
    一.我们写一个游戏小程序,希望吧能够再玩过一局之后,可以选择继续游戏或者退出,所以我们先写一个循环让程序可以持续的运行起来。在这里我们选择dowhile循环,它与while循环相比......
  • C语言中字符串详解
    C语言中字符串详解字符串时是C语言中非常重要的部分,我们从字符串的性质和字符串的创建、程序中字符串的输入输出和字符串的操作来对字符串进行详细的解析。什么是字符......
  • 【数据结构(c语言版)】树的概念以及结构
    数据结构之树的概念以及结构1.树的概念树是一种非线性的数据结构,是由n(n>=0)有限节点的组成的一个具有线性关系的集合。叫树的原因是因为它看起来像是一颗倒挂的树,只不过是根......
  • C语言结构
     01一个程序由一个或多个源程序构成一个规模较小的程序,往往只包括一个源程序文件,一个源程序文件包括3部分:预处理指令,由预处理得到的结果与程序其他部分一起,组成一个完整的......