c语言——指针定义

本文深入解析指针概念,包括直接与间接存储的区别,指针变量的定义、赋值及通过指针访问变量的方法。并通过三个案例演示了指针在函数参数传递中的作用,特别是如何利用指针实现变量交换,帮助理解指针在实际编程中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

指针 精髓
指针—地址
通过变量名访问变量,称为直接存储
通过地址(指针)访问变量,称为间接存储
1.定义指针变量
基类型 * 指针变量名
说明:基类型可以是任意数据类型
* 说明其后的变量名为指针变量名
指针变量名是任意合法的标识符
例如
int * pointer-1;
2.指针变量赋值
1)先定义后赋值
int * pointer-1;
int a;
pointer-1=&a;
2)初始化,定义的同时赋值
int a; int * pointer-1=&a;
3.通过指针访问变量(间接访问)
* 代表地址所指向的内存单元,*后面只能跟地址变量(指针变量)
int a;
int * pointerA=&a;
*pointerA=5;//间接访问
a=5;//直接访问
printf(“a=%d”,a);
printf(“a=%d”,*pointerA)间接访问
案例1
void exchange(int x,int y)
{int t;
t=x;
x=y;y=t;

 }
 void main()
 {int  a=3,b=5;
 exchange(a,b);
 printf("a=%d,b=%d",a,b);
 }
 案例2
 void exchange2(int * x,int * y)
 {int t;
 t=*x;
* x=*y;*y=t;
 
 }
 void main()
 {int  a=3,b=5;
 exchange2&a,&b);
 printf("a=%d,b=%d",a,b);
 } 
 案例3
 void exchange3(int * x,int * y)
 {int * t;
 t=x;
 x=y;
 y=t;
 }
 void main()
 {int  a=3,b=5;
 int * pointerA=&a;
 exchange3(&a,&b);
  printf("a=%d,b=%d",a,b);//3,5
 printf("&a=%d,&a=%d,&pointerA=%d",&a,pointerA,&pointerA);
 } 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值