常量指针和指针常量的区别

您所在的位置:网站首页 指针定义和赋值的区别 常量指针和指针常量的区别

常量指针和指针常量的区别

2024-07-12 01:15| 来源: 网络整理| 查看: 265

在面试中我们经常会被面试官问到什么是常量指针,什么又是指针常量。可能第一次被问到都会有些懵逼(大神略过)。我今天就来讲一讲这二者的区别。 下面开始正题。。。。

指针常量

指针常量:顾名思义它就是一个常量,但是是指针修饰的。 格式为:

int * const p //指针常量

在这个例子下定义以下代码:

int a,b; int * const p=&a //指针常量 //那么分为一下两种操作 *p=9;//操作成功 p=&b;//操作错误

因为声明了指针常量,说明指针变量不允许修改。如同次指针指向一个地址该地址不能被修改,但是该地址里的内容可以被修改

常量指针

常量指针:如果在定义指针变量的时候,数据类型前用const修饰,被定义的指针变量就是指向常量的指针变量,指向常量的指针变量称为常量指针,格式如下

const int *p = &a; //常量指针

在这个例子下定义以下代码:

int a,b; const int *p=&a //常量指针 //那么分为一下两种操作 *p=9;//操作错误 p=&b;//操作成功

因为常量指针本质是指针,并且这个指针是一个指向常量的指针,指针指向的变量的值不可通过该指针修改,但是指针指向的值可以改变。

附加题

指向常量的指针常量该怎么写? 答案:

const int * const b = &a;//指向常量的指针常量


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3