1. 指针常量

本质是一个常量,而用指针修饰它。指针常量的值是指针,这个值因为是常量,所以不能被赋值。

形式:

int* const p;

注意:

  1. 它是个常量!
  2. 指针所保存的地址可以改变,然而指针所指向的值却不可以改变;
  3. 指针本身是常量,指向的地址不可以变化,但是指向的地址所对应的内容可以变化;

2. 常量指针

常指针,指向一个常量的指针。

形式:

 int const* p;  const int* p;
 例如:
 const int i =123;//常量
 int const* p = i; //指向常量的指针

注意:

  1. 常指针不能通过指针修改值的内容。(常量不可修改)

  2. 指针还可以指向别处,因为指针本身只是个变量,可以指向任意地址。

3. 指向常量的常指针

指向常量的指针常量就是一个常量,且它指向的对象也是一个常量。

形式:

 const int* const p;

注意:

  1. 一个指针常量,指向的是一个指针对象;
  2. 它指向的指针对象且是一个常量,即它指向的对象不能变化;

4. 区别

是否是常量 指针指向的内容是否可以修改 是否可以通过指针修改指向的内容
指针常量
常量指针
指向常量的常(量)指针
Copyright © ershouche-FE 2019 all right reserved,powered by Gitbook文件修订时间: 2022-02-28 12:44:56

results matching ""

    No results matching ""