c语言变量定义引用,C语言指针变量的定义和使用

指针变量中存放的就是变量在内存中的地址。指针的定义类似于普通变量的定义,只是需要在指针(变量)名前添加指针运算符*。

int *pa; //定义了一个指向 int 型变量(对象)的指针(变量)pa

//保存“存放整数的变量的内存地址”的小房子

int a; //定义了一个 int 型变量,保存“整数”的小房子

pa = &a; //指针 pa 指向变量 a(指针变量的赋值)

将指针运算符*写在指针之前(如*pa),可以获取指针指向的变量(对象)内存储的内容。即指针 pa 指向变量 a 时,*pa就是变量 a 的别名,给*pa赋值就相当于给 a 赋值,*pa=80;等价于a=80;(见图 1)。

edeeabc8fe00729413fae96b99e13cca.gif

图 1:指向 int 型变量 a 的指针(变量)pa

在程序中,我们可以利用指针(变量的别名)来修改变量的值,如代码清单 1 所示。

代码清单 1:通过指针操作年龄(修改变量的值)

#include

#include

int main( )

{

system("color 70");

int back00 = 10, back90 = 30, back80 = 35;

int *son, *mother, *father;

son = &back00; //指针 son 指向 back00

mother = &back90; //指针 mother 指向 back90

father = &back80; //指针 father 指向 back80

printf("儿子今年的年龄:%d\n", *son);

printf("妈妈今年的年龄:%d\n", *mother);

printf("爸爸今年的年龄:%d\n", *father);

puts("5年后:");

*son = 15; //将指针 son 指向的对象修改为 15

*mother = 35; //将指针 mother 指向的对象修改为 35

*father = 40; //将指针 father 指向的对象修改为 40

printf("儿子的年龄:%d\n", back00);

printf("妈妈的年龄:%d\n", back90);

printf("爸爸的年龄:%d\n\n\n", back80);

system("pause");

return 0;

}

运行结果为:

儿子今年的年龄:10

妈妈今年的年龄:30

爸爸今年的年龄:35

5年后:

儿子的年龄:15

妈妈的年龄:35

爸爸的年龄:40

知识点总结

若指针 pa 指向变量 a,即pa=&a;,则 *pa 即为 a 的别名;

修改 *pa 的值就是修改 a 的值,即*pa=80;等价于a=80;;

指针前加上指针运算符*可以获取指针所指向变量的值(如*pa);

变量名前加上取址运算符&可以获取变量在内存中的地址(如&a)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值