【中级】C语言 知识点总结(四)指针(1)

本文介绍了指针的基本概念,包括指针作为地址的解释,声明和初始化指针变量,以及指针的引用方式。区分了变量的指针和指针变量的区别。

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

Hello,小伙伴们!Long time no see,有没有更期待柚子的更新(哈哈开玩笑啦)。今天我们一起来学习一个新知识点-----指针。

一、什么叫做指针?

  要我说,指针就是地址( 指针 = 地址 ),严格的来说,指针是一个地址,是一个常量。

例如:

设有字符变量C,其内容为“K”,占用了001A号单元;设有指针变量p,内容为001A,这时我们称p指向变量C,或者说p是指向变量C的指针。指针变量可以赋值为不同的指针值,但常把指针变量简称为指针。为了避免混淆,我们约定:“ 指针 ”指的是地址,是常量,“ 指针变量 ”是指取值为地址的变量。定义指针的目的是为了通过指针访问内存单元。

二、声明指针变量

(1)指针类型说明,即定义变量为一个指针变量;

(2)给出指针变量名;

(3)变量值(指针)所指向的变量的数据类型。

int* p2;        //p2指向整型变量的指针变量
float* p3;      //p3指向浮点变量的指针变量
char* p4;       //p4指向字符变量的指针变量

三、指针变量初始化

在C语言中,有如下两种符号与指针变量有关;

(1)&:取地址运算符

(2)* :指针运算符(或 “ 间接访问 ” 运算符)

在定义语句中,可以给部分指针变量赋初值。

int a;
int* P=&a;

四、指针变量的引用

在C语言中引用指针变量有多种方式,最常见的有下列三种。

(1)给指针变量赋值

指针变量=表达式;

此处的表达式必须是地址型表达式,例如:

int i,*p_i;
p_i=&i;

 (2)直接引用变量名

int i,j,*p=&i,*q;
q=p;                    //将p的值(i的地址)赋给指针变量q
scanf("%d%d",q,&j);     //使用指针变量接收数据

(3)通过指针变量引用它所指向的变量

int i=1,j=2,k,*p=&i;
k=*p+j;                //由于p指向i,所以*p就是i,结果k就等于3

五、分清变量的指针指针变量

  变量的指针就是变量的地址。

     在C语言中,变量的指针是指向变量在内存中的地址的变量。指针可以用来访问和修改变量的值。

例如:定义一个整型变量a并初始化为10

int  a = 10 ;

定义一个指向a的指针变量p

 int* p ;

p = &a ;        //将p指向a的地址

可以通过指针访问和修改变量的值

*p=20 ;                //修改a的值为20

printf("%d",a) ;        //输出20

  ②存放变量地址的变量是指针变量。(p就是一个变量名)

     指针变量是一种特殊类型的变量,可以存储其他变量的地址。

     通过使用指针变量,可以间接访问和修改变量的值。

  上图:

 这次就先分享到这儿,这一部分的内容有点多,我们由浅及深,毕竟一口吃不成一个胖子,如果觉得柚子总结的还可以的话,点赞+关注+留言,我都会看的哦!

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我为IT舔砖Java

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值