C语言指针

一、指针和指针变量(重点)

在计算机科学当中,指针是编程语言中的一个对象,利用地址,它的值直接指向存在计算机存储器中另一个地址的值。

1、指针是什么?

指针就是一个变量,此变量存储的是一个地址,指向一个存储单元。我们可以根据指针(地址)找到地址所指的变量,并对这个变量进行操作(赋值等)。通过C语言里面的取地址符号&和取所指向内容的符号*可以很方便的表示指针以及指针所指向的变量之间的关系。

2、为什么要用指针?

正确而灵活的应用指针,可以有效的表示复杂的数据结构;能够动态的分配内存;方便的使用字符串;有效而方便的使用数组;在调用函数时获取一个以上结果;能够直接处理内存单元地址等。

【举例应用】,比如值传递:C语言中在函数调用时始终采取“值传递”的方式。意思是这样的,并不是实参直接参与某一函数操作,只是实参把它的值传递给形参去参与函数内部的操作(函数调用时形参被分配内存,形参的值是实参的拷贝;但要明白,形参和实参不是一个变量,不占用相同的内存形参发生变化实参不一定变化)。

比如三个变量x,y,z执行步骤:b=a;b=c;之后, a不一定等于c。

3、变量与地址

计算机存储器(内存)中每个字节都有一个唯一的编号-------地址。
在这里插入图片描述
4、指针与指针变量

指针:一个变量的地址;

指针变量:专门存放变量的地址的变量;
在这里插入图片描述
在这里插入图片描述
A.指针变量的定义

数据类型 *标识符;

数据类型:指针所指对象的类型;标识符:指针说明符。

例如:

int *pa;

定义一个指针变量pa,简称为指针pa;

“*”:是指针类型说明符;

int:指针的基本类型;

B.指针变量的初始化

一般形式:数据类型 *指针名=初始地址值;
在这里插入图片描述
C.指针的基本运算

指针运算的实质------地址运算

间接存取运算:

&:取地址运算符 *:取值运算符

在定义指针时,“*”是一个指针说明符,表示指针;

在使用指针时,“*”表示取该指针所指向变量的值;
在这里插入图片描述

发布了302 篇原创文章 · 获赞 5 · 访问量 6859
展开阅读全文
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 技术黑板 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览