指针变量的定义和引用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 变量的指针是变量的首地址 2. 指针变量用来存放变量的地址 ➢指针变量的定义也必须要指定类型,表示指 针所要指向的变量数据类型 在使用指针变量之前,必须为其赋值,即使指 针变量指向某一个确定的值 &为取地址运算符,*为指针运算符(也叫取 值运算符)
输入三个整数,按由小到大的顺序输出, 要求用指针实现
运行结果为:
?
看出其地址。注意,这个地址并不是始终不变的,这 是由机器和操作系统来安排的,我们无法预先知道。
指针与地址的概念
在现实生活中,我们要给朋友写信,首先通过认识这个人得到 他的地址。但对于投递员来说,他通过投递到这个地址,找到 了这个人。
投递员
弋江区纬六路1号
张三
寄信人
根据C语言知识来说 对于寄信人来说:&张三——弋江区纬六路1号 对于投递员来说:*弋江区纬六路1号——张三 其中:“*”符号为取该地址下的内容
指针与地址的概念
例1:分析下题的输出结果: main() {
int a,b,c; scanf(“%d,%d,%d”,&a,&b,&c); a=10;b=20; c=a+b;
printf(“%d,%d”,c,&c,*(&c)); }
用一个变量来代替——指针变量
变量的指针和指向变量的指针变量
指针变量的定义: 一般形式: [存储类型] 数据类型 *指针名;
例 int *p1,*p2; 指针变量本fsltoa指身atitc针的*c的存hqa;目储r *标类na变型m量e; 的数据类合型法标识符
指针变量与其所指向的变量之间的关系
i_pointer 2000
变量i
i
3
&i
*i_pointer i=3;
*i_pointer i_pointer
*i_pointer=3
指针变量的定义和引用
教学内容 ➢应知指针的意义及使用 ➢单个变量的指针应用 ➢通过指针引用变量的意义
引例:曾经我们在学习变量的输入输出时学过以下 类似的例子 main() {
int a,b,c; scanf(“%d,%d,%d”,&a,&b,&c); a=10;b=20; c=a+b; printf(“%d”,c); } 曾经说过: “&”符号为取地址符号,可以取得变量的地址。
变量的指针和指向变量的指针变量
例3:输入两个整数,按先大后小的顺序输出。
main()
{ int a,b,*p1,*p2,*p;
程序运行中,指针变量p1,p2的指向变化如图
scanf(“%d%d”,&a,&b);
p1=&a;p2=&b;
if (a<b)
{p=p1;p1=p2;p2=p;}
printf(“\na=%d,b=%d\n”,a,b);
printf(“max=%d,min=%d\n”,*p1,*p2);
}
运行结果为:
输入:5 9 ↙
ຫໍສະໝຸດ Baidu
输出:a=5,b=9
max=9,min=5
➢定义指针后不经过赋值直接使用 ➢指针与指向的数据类型不同 ➢错用&和*
➢变量的存取方式有直接访问(通过变量的名 称访问变量)和间接访问(通过变量的指针访 问变量)两种
➢Pointer 指针 ➢Argument 参数 ➢declaration 声明 ➢represent 表示 ➢manipulate 处理
指针与地址的概念
在上机实验的时候,有没有同学曾经做过这样的试验: main() {
int a,b,c; printf(“%d ,%d ,%d”,&a,&b,&c); }
变量的指针和指向变量的指针变量
例2:通过指针变量访问整形变量。 main() {
int a,b; int *p1,*p2; /*定义两个指针变量*/ a=100;b=50; p1=&a; p2=&b; /* p1指向a,p2指向b*/ printf(“%d,%d\n”,a,b); printf(“%d,%d\n”,*p1,*p2); } 运行结果: 100,50 100,50
相关文档
最新文档