C++ Primer中&、*符号多重定义与int *p和int* p区别的示例分析
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章给大家分享的是有关C++ Primer中&、*符号多重定义与int *p和int* p区别的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。& 和*这样的符号
千家信息网最后更新 2026年11月01日C++ Primer中&、*符号多重定义与int *p和int* p区别的示例分析
这篇文章给大家分享的是有关C++ Primer中&、*符号多重定义与int *p和int* p区别的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
& 和*这样的符号,既能用作表达式里的运算符,也能作为声明的一部分出现,符号的上下文决定了符号的意义:
int i = 42;int &r = i; //&紧随类型名出现,因此是声明的一部分,r是一个引用int *p; //*紧随类型名出现,因此是声明的一部分,p是一个指针pp = &i; //&出现在表达式中,是一个取地址符*p = i; //*出现在表达式中,是一个解引用符int &r2 = *p; //&是声明的一部分,*是一个解引用符
在声明的语句中,&和*用于组成复合类型;在表达式中,他们的角色又转变成运算符。在不同场景下出现的虽然
是同一个符号,但是由于含义截然不同,所以我们完全可以把他们当做不同的符号来看待。
根据C++Primer介绍:
对于int* p(这种写法合法,但是容易造成误导),其基本数据类型是int,后面的*其实是声明符。在一组公用的数据类型后面可以使用不同的声明符。例如:
int i =1024, *p = &i, &r = i; //i是一个int类型的数据,p是一个int型的指针,r是一个int型引用。
对于int *p,其和int* p的含义一样,都表示int类型的指针变量p。
但是将声明符紧跟着变量名是一种更容易理解的做法。否则可能会出现误导现象:
例如
int* p1, p2;表示含义是p1是一个int型的指针,p2是一个int型变量。而不是p1,p2都是指针变量,它们共用的是基本数据类型部分。
如果写成int *p1,p2;则和上式表示的含义完全一样,但是更加清晰,不会造成误导。
不过对于以上两种写法的使用,主要看个人的习惯,但是最好不要混用。
感谢各位的阅读!关于"C++ Primer中&、*符号多重定义与int *p和int* p区别的示例分析"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
类型
符号
指针
不同
变量
含义
数据
表达式
误导
示例
C++
分析
内容
写法
更多
篇文章
运算符
运算
不错
合法
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技
互联网科技公司
为想互联网科技怎么样
科技互联网产品
互联网科技公司华为
科技股互联网
互联网 科技
北京互联网科技有限公司
奇酷互联网络科技
唐信互联网科技 大连
互联网科技logo
深圳期待互联网科技
互联网科技素材视频竖屏
互联网 科技馆
迪庆互联网科技招生
洛阳共同富裕互联网科技有限公司
爱医互联网络科技
互联网与数字科技关系
易租星互联网科技有限公司
北京军民互联网科技公司
科技互联网公司装修
贷财互联网科技
互联网金融科技平台
央行互联网金融科技公司
本届互联网博览会上的黑科技
高科技互联网发展前景如何
上海创道互联网络科技有限公司
下一代互联网重大应用科技园
国产互联网科技公司
深圳互联网科技园地址