c语言指针赋值,c语言地址变成指针才能赋值

首页 > 教育培训 > 作者:YD1662023-06-24 13:59:34

c语言指针赋值,c语言地址变成指针才能赋值(1)

文/Edward

当我们将一个指针变量定义好之后,接下来需要考虑的问题就是如何来使用这个指针变量了。前面学习普通变量的时候,我们知道,一个变量的操作其实就是分成读和写两个步骤。而指针变量在平时使用的时候,也是主要分成读和写两个操作步骤,不同于常规变量的是,指针变量的赋值运算其实是写入一个普通变量的地址,我们将这一个过程称为指针变量的"指向操作"。而对指针变量读取的时候,由于指针变量存放的是某一个变量的地址,而读取某一个地址这个操作往往是没有意义的,因此在指针变量读取的时候,大多数情况我们都是读取指针变量指向的那个变量里面的内容。

指针变量的指向操作,其实就是将定义好的一个指针变量指向某一个变量或者内存区域,其方式为:"数据类型 *指针变量名 = &指向的变量;"。当然也可以先定义指针,再将其指向某一个变量,即:

"数据类型 *指针变量;

指针变量 = &指向的变量;"

在使用时,一定要注意上面"*"号的用法差异。还需要注意的是,一个指针变量只能指向与其数据类型相同的变量。

一旦一个指针指向某一个变量之后,操作这个指针变量就如同操作其指向的那个变量了。在操作时,我们使用"*指针变量名"的形式进行读取和写入,就等同于对指针所指向变量的读和写操作。指针变量指向变量的读取如图1所示。

c语言指针赋值,c语言地址变成指针才能赋值(2)

图1 指针变量指向变量的读取

同时,指针变量指向变量的赋值如图2所示。

c语言指针赋值,c语言地址变成指针才能赋值(3)

图2 指针变量指向变量的赋值

由图1和图2中我们可以看出,当指针变量p指向了变量a之后,使用*p进行操作,就如同在操作变量a。以上就是指针变量的操作,非常简单。

需要注意的是,当一个指针被定义好之后,一定要对其进行初始化,即指向某一个变量的地址,没有指向任何变量的指针被称为"空指针",空指针无法去做任何操作,一旦对空指针进行赋值,那么编译出来的程序将会无法使用,如图3所示。

c语言指针赋值,c语言地址变成指针才能赋值(4)

首页 123下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.