c语言使用指针在被调函数中改变主调函数的变量 地址运算符 间接运算符

1.指针

用于存储变量的地址

指针是一个值为内存地址的变量。

2.&运算符(地址运算符)

&后跟一个变量名,给出变量的地址

&a,表示变量a的地址

3.*运算符(间接运算符/解引用运算符)

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

a=1;
p=&a;//p是指向a的指针
v=*p;//将p指向的地址上的值赋给v
//以上三条语句最终结果,将1赋值给v

4.声明指针

类型说明符表示指针所指向对象的类型。
*表示声明的变量是一个指针。

声明指针时使用的星号和解引用运算符不是一个东西。

通常,在声明时,星号和指针名之间有空格,解引用变量时省略空格。

int * a;
char * c;

5.使用指针在函数间通信

使用指针交换两个数,例子:

#include<stdio.h>
void interchange(int * u,int * v){//参数是一个指针类型int temp;temp= *u;//temp获得u指向对象的值*u = *v;*v = temp;
} int main(){int x = 5, y = 10;printf("原始数据 x = %d ,y = %d\n",x,y);interchange(&x,&y);//把地址发送给函数printf("交换后 x = %d ,y = %d",x,y);return 0; 
}
//输出: 
//原始数据 x = 5 ,y = 10
//交换后 x = 10 ,y = 5

该函数传递的是x和y的地址,u和v将把地址作为他们的值,因此应将u、v声明为指针。

u的值是&x,所以用*u可表示x的值。

x和y的地址传递给该函数,使用指针和*运算符,该函数可以访问存储在这些位置的值并改变他们。

如果调用函数时,传递的是x的地址,那么函数中定义的形式参数必须是一个指向和x相同类型的指针。这样可以在被调函数中改变主调函数的变量。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/560322.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

西电计算机学院导师苗启广,Xidian Media Lab

西电媒体实验室首位博士生简萌顺利通过博士学位论文答辩2015年11月27日上午&#xff0c;西电媒体实验室博士学位论文答辩会在北校区科技楼A301B会议室举行&#xff0c;郑喆坤教授指导的首位博士生简萌顺利通过博士学位论文答辩。本次答辩委员会主席由西北工业大学自动化学院副院…

C语言程序设计基础练习题

PTA上C语言程序设计练习题&#xff0c;包含 换硬币、水仙花数、最大公约数最小公倍数、高空坠球、猴子吃桃、兔子繁衍、出租车计价、三角形判断、简单计算器、平面向量加法。 这些题需要一些细节或思维。 1.换硬币&#xff1a; 习题4-5 换硬币 (20 分) 将一笔零钱换成5分、2…

使用zigbee的协议栈进行协调器路由器终端初始化

实验目的&#xff1a; 使用协议栈,外加自己写的数码管的代码模块 配置协调器路由器终端&#xff0c;各自对应数码管数字C,R,E。 本身不是很细致&#xff0c;只是把一些重要步骤截了一下&#xff0c;IAR工程什么的默认大家都会了。 zigbee协议栈的下载 下载完找以下文件夹 找…

工程用计算机是什么样子的,【2人回答】学软件工程的应该买什么样的处理器电脑?-3D溜溜网...

回答&#xff1a;1、荣耀MagicBook Pro 2020&#xff1a;&#xff0c;荣耀MagicBook Pro 2020还搭载了MX350独显&#xff0c;MX350基于同GTX 1050一样的GP107核心&#xff0c;让笔记本具备了一定的游戏能力&#xff0c;学习、办公之余的游戏场景也可以从容应对&#xff0c;编程…

zigbee无线通信数码管实验、usbDongle抓包、发字符串

文章目录无线通信数码管实验无线通信抓包usbDongle无线通信发字符串&#xff1a;无线通信数码管实验 给一个模块下载发送程序&#xff0c;模块数码管变为1&#xff0c;说明该模块已成为发送模块。 给一个模块下载接收程序&#xff0c;模块数码管变为2&#xff0c;说明该模块已…

计算机安全加固自动检查,Windows主机安全加固检查列表.doc

第 PAGE 13 页 共 NUMPAGES 13 页目 录TOC \o "1-3" \h \z \u HYPERLINK \l "_To 1账户管理 PAGEREF _To\h 3HYPERLINK \l "_To 1.1用户管理 PAGEREF _To\h 3HYPERLINK \l "_To 1.2弱口令修改 PAGEREF _To\h 3HYPERLINK \l "_To 1.3密码策略 PAG…

zigbee协议栈的系统相关函数的使用 仿照协议栈写事件

文章目录1.osal_set_event函数的使用2.osal_start_timerEx函数&#xff0c;数码管变成c&#xff0c;两秒钟以后&#xff0c;灯点亮。3.我们能不能自己添加一个事件而不用GENERICAPP_SEND_MSG_EVT事件。主要就是通过这个实验知道了&#xff1a;怎么在初始化时候干一些事情那些函…

老年人自学计算机,老年人怎样学电脑?请问从网上能找到学习资吗?

首先学一些基础的知识&#xff0c;这样入门之后其他的就好说了&#xff01;推荐一些基础性的知识&#xff1a;计算机基础可以分为硬件和软件硬件&#xff1a;主板、CPU、硬盘、内存、显卡、机箱电源、鼠标键盘、光驱、音响等软件&#xff1a;WINDOWS系统、OFFICE等一般基本工具…

zigbee上位机通过vs2019的mfc实现

文章目录一、操作系统和输入输出设备的联系二、应用程序和操作系统的联系三、zigbee上位机具体实现结果&#xff1a;四、实现上位机的具体流程&#xff1a;五、通过windows API实现串口通信的原理&#xff1a;一、操作系统和输入输出设备的联系 操作系统能操纵输出设备执行特定…

网上读书关于软件测试,【读书笔记】之软件测试

1.引论1.1 什么是软件测试软件测试主要是对制作的软件产品进行检查和测试&#xff0c;及时地发现程序中的故障和逻辑错误&#xff0c;以保障软件产品的可靠性。软件测试是保证软件质量的关键步骤&#xff0c;也是提高软件可靠性的重要手段&#xff0c;因此它是软件工程的的重要…

matlab guide 自定义右键菜单

在一个gui图形显示界面上点击右键&#xff0c;出现一些选项可以进行操作。 实验效果&#xff1a; 找到菜单编辑器的上下文菜单&#xff1a; 我们看几个回调函数即可&#xff1a; function clear_Callback(hObject, eventdata, handles) cla; function gridoff_Callback(hObj…

计算机活动感悟怎么写,计算机教学心得体会范文五篇.doc

计算机教学心得体会范文五篇计算机教学心得体会范文五篇【一】一、开卷有益&#xff0c;爱不释手然而&#xff0c;在我参加了第一次培训&#xff0c;我就发现自己错了&#xff0c;此次的电脑培训与以前参加过的培训大相径庭。以前的培训都是应付考试的&#xff0c;实用性不强&a…

Java一些基础知识的整合

文章目录1. 数据类型、变量与常量1.1基本数据类型&#xff08;primitive types&#xff09;1.1.1 boolean1.1.2字符型1.1.2.1 转 义 字 符 含 义1.1.3整数类型1.1.4 浮点类型1.2引用类型( reference types )1.3 基本数据类型和引用类型区别1.4 标识符&#xff08; Identifier&a…

空军部队计算机专业有没有用武之地,报名当兵可以选择陆军、海军、空军、武警、火箭军,艰苦地区部队...

如果是本科生&#xff0c;在部队表现优异&#xff0c;年龄不超26周岁是可以被推荐去参加大学生士兵提干考试。考上之后需要到军校培训6个月左右&#xff0c;毕业后下部队就是中尉军衔。二、报名当兵时有陆军、海军、空军、武警、火箭军&#xff0c;艰苦地区部队&#xff0c;选择…

查看本地计算机ip命令,查看你本机的IP信息的命令ipconfig详解【图】

原标题&#xff1a;"查看你本机的IP信息的命令ipconfig详解【图】"关于路由器的知识分享。 - 素材来源网络 编辑:kaka。对于ipconfig命令大家应该不陌生&#xff0c;它主要用于显示本地计算机网络适配器的ip地址、子网掩码以及默认网关等信息。1、IPconfig不带参数不…

什么是传感器? 传感器由哪几部分组成? 传感器分类?

文章目录1.什么是传感器&#xff1f;2.传感器由哪几部分组成&#xff1f;3.传感器分类&#xff1f;1.什么是传感器&#xff1f; 传感器&#xff08;英文名称&#xff1a;transducer/sensor&#xff09;是一种检测装置&#xff0c;能感受到被测量的信息&#xff0c;并能将感受到…

计算机win7关机重启,电脑win7关机后自动重启如何解决_win7一关机就立马自动重启修复方法-win7之家...

我们在使用完win7系统电脑之后&#xff0c;都会顺手对其进行关机操作&#xff0c;以此防止电脑中的硬件过度消耗&#xff0c;可是近日有些用户在将win7电脑关机之后却又出现了重启的情况&#xff0c;最终不得不以切断电源的方式来解决&#xff0c;那么电脑win7关机后自动重启如…

RFID 射频 RFID工作流程 自动识别技术 工作频段 短距离无线通信技术

文章目录1.rfid概念&#xff1a;2.射频概念&#xff1a;3.rfid工作流程&#xff1a;4.几类自动识别技术各有什么特点&#xff1f;他们有何不同。5.RFID系统有哪些工作频段&#xff1f;各频段的特点是什么。6.对比几种短距离无线通信技术1.rfid概念&#xff1a; RFID是一种自动…

链表 队列 基本概念 为什么使用二叉查找树 抽象数据类型

文章目录0.抽象数据类型(ADT)的优点&#xff1f;1.为什么需要链表&#xff1f;2.链表的概念&#xff1f;3.队列的概念&#xff1f;4.为什么需要二叉查找树&#xff1f;0.抽象数据类型(ADT)的优点&#xff1f; ADT版本可读性高&#xff0c;隐藏编程细节&#xff0c;对终端用户隐…

黑盒测试还适用于测试软件,软件测试 黑盒测试中的决策表技术

决策表技术是用于黑盒测试的广泛使用的用例设计技术之一。这是一种系统方法&#xff0c;它以表格形式捕获各种输入组合及其各自的系统行为。它也称为因果表。该技术用于系统地选择测试用例; 它节省了测试时间&#xff0c;并为软件应用程序的测试区域提供了良好的覆盖。决策表技…