指针

一.什么是指针

指针是C语言中最重要也是最容易被误解的特性之一。计算机将内存分割为字节,每个字节都可以储存八位的信息,每个字节都有唯一的地址,用来与其他字节相区别。程序中的每个变量占有一个或多个字节内存,把第一个字节的地址称为是变量的地址。而指针就是这个地址,指针变量就是存储地址的变量。

二.指针变量的声明

对变量指针的声明类似于对普通变量的声明,唯一的不同就是必须在指针变量的名字前放置星号。

 

上述声明说明p是指向int类型对象的指针变量。指针变量可以和其他变量一起出现在声明中:

 

 其中i和j都是普通整型变量,a和b是整型数组,而p和q是指向整型对象的指针。

C语言中,每个指针变量只能指向一种特定类型的对象:  

 

 事实上,指针变量甚至可以指向另一个指针,即指向指针的指针。

三.指针的初始化与赋值

为了使用指针,C语言中有了&(取地址)运算符,可以用&运算符找到变量的地址。如x是一个变量,那么&x就是x在内存中的地址。为了获得对指针所指向的对象的访问,可以使用*(间接寻址)运算符。

如果p是指针,那么*p表示p当前指向的对象。(注意:不要把间接寻址运算符用于未初始化的指针变量。)

声明指针变量是为指针留出空间,但是并没有把它指向对象,所以在使用前初始化指针是非常重要的。

初始化方法如下:

 

 这三种都可以将i的地址取出来赋给p来初始化指针变量。

posted @ 2021-11-21 11:17  疯子眼里小丑最美  阅读(111)  评论(0编辑  收藏  举报