常指针和指向常量的指针
最近在学习引用,有一些学习心得,记录如下:
1:引用是变量的别名
int a;
int b&=a;
要注意引用只有声明,而没有定义,并且引用必须在声明的时候进行初始化,一旦与某个变量关联起来,就将一直效忠于它。
2:引用的实质是指针
其中引用出现在C++中的理由,也是为了在一定程度上回避一下C语言中的指针问题。
引用相当于 常指针
int a;
int &b=a;
//实际上是下述代码的伪装表示
int * const pt= &a;
其中引用 b扮演的角色与表达式 *pt 是完全相同的。
3:说完了第二个问题就该说说常指针和指向常量的指针的区别了
先说一下概念 常指针 是指针指向的位置不能改变,也就是指针的指只能赋值一次。指向常量的指针 是指指针指向的对象不能改变,也就是说不能通过这个指针来改变指向对象的指,而指针自身的指向是可以改变的。
再说一下具体的形式
//以下两种为指向常亮的指针
const char *p;
char const *p;
//以下为常指针
char * const p;
区分就是看 * 和const 谁离指针变量名 p近,如果是 * 离的近,表示该指针指向一个常量。
反过来如果是 const离的近,则代表是一个常指针。
4:
const int n=5;
int const n=5;
完全等价。
另:指向常亮的指针不能进行左值操作
常指针和指向常量的指针相关推荐
- [C++基础]018_常量指针和指向常量的指针
先来看一下什么是常量指针,什么是指向常量的指针吧! 1. 常量指针定义 1 int * const ptr = new int(); 2. 指向常量的指针 1 const int* ptr; 上面已经 ...
- const指针和指向常量的指针
先看下面六种写法: 1. const int p;2. const int *p;3. int const* p;4. int * const p;5. const int * const p;6. ...
- 常指针、指向常量的指针、指向常量的常指针
三者的区分 简而言之- 常指针:地址不可变,内容可变 指向常量的指针:地址可变,内容不可变 指向常量的常指针:地址不可变,内容不可变 样例 代码如下: #include <iostream> ...
- 常量指针与指向常量的指针
这两个概念经常很容易混淆,下面简单分析一下 1.常量指针: int * const p : const p 就是一个常量,然后再看*,可以看出是一个常量类型的指针,即int类型的常量指针.不能修改 ...
- 【转】const int *p和int * const p的区别(常量指针与指向常量的指针)
[转]作者:xwdreamer 出处:http://www.cnblogs.com/xwdreamer 对于指针和常量,有以下三种形式都是正确的: const char * myPtr = &am ...
- 辨析 const指针 和 指向常量的指针
辨析以下几种指针p的定义. int tmp = 5;int *p = &tmp; const int *p = &tmp; int const* p = &tmp; int * ...
- 常量指针、指针常量以及指向常量的指针常量
三个名词虽然非常绕嘴,不过说的非常准确.用中国话的语义分析就可以很方便地把三个概念区分开. 一)常量指针. 常量是形容词,指针是名词,以指针为中心的一个偏正结构短语.这样看,常量指针本质是指针,常量 ...
- char * const p; //常量指针,p的值不可以修改 char const * p;//指向常量的指针,指向的常量值不可以改 const char *p; //和char const *p
char * const p; //常量指针,p的值不可以修改 char const * p://指向常量的指针,指向的常量值不可以改 const char *p: //和char const *p
- 彻底理解——指针常量和常量指针、指向常量的常指针
前言 在汉语中,定语一般都放在中心词的前面,像C语言和C++语言这种技术性语言,更是如此. 所以定语重要还是中心词重要,肯定是中心词重要. 如:美丽的女孩 美丽的是定语 女孩是中心词 ...
最新文章
- 毕业设计(3)基于MicroPython的篮球计时计分器模型的设计与实现
- 基于Mahout的电影推荐系统
- linux常用网络诊断命令,linux网络常用诊断工具
- 【Tiny4412】Tiny4412烧写uboot脚本分析
- Python while循环 - Python零基础入门教程
- (3)评价模型-分析总和
- Java 数据库编程专栏 目录
- Android学习路线指南-------任玉刚
- PCB中负片层的含义
- linux系统清理命令行,快速解决Win10系统升级助手打不开无法运行的方法
- DAP-seq助力胡杨耐盐机制的研究Populus euphratica WRKY1 binds the promoter of H+-ATPase gene to enhance gene expr
- 恩,今天把git和sublime结合了一下。。然后看了下《西部世界》
- outlook配置阿里企业邮箱
- Python数据分析学习总结——替代Matlab
- maplesim matlab,MapleSim 2020
- Zotero中文文献管理
- python热图_Python-Seaborn热图绘制的实现方法
- 【网络工程师笔记】——防火墙配置
- 服务器响应未知 请再试一次,PS4 错误代码解决方法
- XeTex字体字号对照表
热门文章
- 【玩转嵌入式屏幕显示】(三)TFT-LCD屏幕打点 + 画线 + 画矩形 + 画圆Bresenham算法实现(基于打点函数,算法可移植到任何屏幕的驱动程序之上)
- 利用循环输出如下图形
- 【POI2005】SZA-Template(KMP)
- 如何从外网穿透到内网
- 手机软键盘的发送按键和确认按键调用方法
- 【笔记】H.265/HEVC 视频编码(四)——预测编码
- db2 hadr 起停顺序_电机顺序启停问题
- 智能未来:聚焦2018世界人工智能大会
- 如何查看网易云笔记自己曾经使用过的设备
- selenium+python 的微博自动转赞评功能实现