首页 > 其他分享 >C语言---函数

C语言---函数

时间:2023-09-06 17:34:54浏览次数:36  
标签:函数 int C语言 --- 地址 nurse ptr 指针

与指针相关的运算符

指针是一个值为内存地址的变量(或数据对象)

地址运算符:&

一般注解:后面跟一个变量名时,&给出该变量的地址。

示例:&nurse表示变量nurse的地址

间接(或解引用)运算符:*

一般注解:后跟一个指针名或地址时,*给出存储在指针指向地址上的值。

示例:

nurse=22;

ptr=&nurse;//指向nurse的指针

val=*ptr;//把ptr指向的地址上的值赋给val

执行以上3条语句的最终结果是把22赋给val。

可以把变量相关的两类信息传递给函数

第一种:主函数调用function1(x);要求函数定义中的形式参数必须是一个与x的类型相同的变量: int function1(int num);

第二种:主函数调用function2(&x);要求函数定义中的形式参数必须是一个指向正确类型的指针:int function2(int *ptr);

使用指针在函数间通信

int main(void){
    int x = 5,y=10;
    printf("原始的x = %d 和 y = %d。\n",x,y);
    interchange(&x,&y);//把地址发送给函数
    printf("现在 x = %d 和 y=%d.\n",x,y);
    return 0;
}
void interchange(int *u,int *v){
    int temp;
    temp = *u;//temp获得u所指向对象的值
    *u = *v;
    *v = temp;
}

interchange(&x,&y)该函数传递的不是x和y的值,而是它们的地址。

这意味着出现在interchange()原型和定义中的形参u和v将把地址作为它们的值。

使用* 和 指针,该函数可以访问存储在这些位置的值并改变它们

 

标签:函数,int,C语言,---,地址,nurse,ptr,指针
From: https://www.cnblogs.com/luckLjh/p/17682913.html

相关文章

  • drf-day8
    认证组件1、登录功能写登录的时候可以使用auth提供的user表,也可以自定义写接口登录成功时,需要有一个标志,所以需要随机生成一个随机字符串,放在表中,以后只要携带这个随机字符串过来,我们就认为用户登录。视图类fromrest_framework.viewsetsimportViewSetviewset继承fromre......
  • 儿童玩具音乐芯片方案,6通道midi播放语音芯片,NV170D-8S
    随着科技的不断进步,儿童玩具行业也在不断演化。如今,儿童们期待的不仅仅是有趣的外观,还有令人惊叹的音乐和声音效果。为了满足这一需求,广州九芯电子研发了NV170D-8S,一款创新的6通道MIDI播放语音芯片,它将为儿童玩具带来前所未有的声音体验。 超越传统音乐芯片的可能性儿童玩具的音乐......
  • Java设计模式-懒汉模式
    懒汉模式(LazyInitialization)是一种创建型设计模式,它用于在需要时才创建对象。这种模式的主要优点是节省资源,因为它只在真正需要对象时才创建实例。在Java中,懒汉模式可以通过使用静态内部类实现。以下是一个简单的Java懒汉模式示例:publicclassLazySingleton{//创建一个静......
  • TwinCAT3 - 实现Dictionary
    目录1,前言2,C#的字典3,TwinCAT3的字典定义功能块添加方法4,用起来1,前言C#有字典,TwinCAT没字典,咋办,自己写一个咯2,C#的字典C#的字典使用很简单,下面是最基本的使用Dictionary<string,object>dic=newDictionary<string,object>();dic.Add("key1",1);dic.Add("key2","ABC")......
  • 你折腾一天都装不上的插件,函数计算部署 Stable Diffusion 都内置了
    在进行函数计算StableDiffusion答疑的过程中,遇到很多同学在装一些插件的过程中遇到了难题,有一些需要安装一些依赖,有一些需要写一些代码,很多时候安装一个插件就能折腾几天,我们收集了很多同学需要的插件,这一次把比较难装的StableDiffusion插件都装好了。可以根据自己的需要自......
  • 函数的参数
    函数的参数函数参数的两大分类函数的默认参数和位置参数可变参数(不定长参数):*和**命名关键字的参数('*',)函数参数的两大类形参函数在'定义阶段'括号中定义的'变量名'就是形式参数,简称'形参' defindex(a,b):pass#a,b就是形参实参......
  • 开课吧前端1期.阶段2:ES6详解-3 面向对象 JSON
    7、面向对象-基础//原来写法functionUser(name,pass){//这就是一个类this.name=name;this.pass=pass;}User.prototype.showName=function(){alert(this.name)};User.prototype.showPass=function(){alert(this.pass)};varu1=newUser('blue','111......
  • DRF----限流、序列化、视图、条件搜索
    1.4djangorestframework(中)drf内置了很多便捷的功能,在接下来的课程中会给大家依次讲解下面的内容:快速上手请求的封装版本管理认证权限限流序列化视图条件搜索分页路由解析器 6.限流限流,限制用户访问频率,例如:用户1分钟最多访问100次......
  • DRF----分页、路由、解析器
    1.5djangorestframework(下)drf内置了很多便捷的功能,在接下来的课程中会给大家依次讲解下面的内容:快速上手请求的封装版本管理认证权限限流序列化视图条件搜索分页路由解析器  10.分页在查看数据列表的API中,如果数据量比较大,肯定......
  • 开发笔记-大数据技术栈-spark基础
     Spark是一个快速、通用、可扩展的大数据分析引擎,是集批处理、实时流处理、交互式查询、机器学习与图计算为一体的大数据开源项目。 一、对比MapReduce1.Hadoop中的job处理流程:》从hdfs读取数据》在map阶段,执行mapperfunction,然后split到磁盘》在reduce阶段,从各个map......