【c++】c++语言中““符号的用途介绍

devtools/2025/3/19 19:12:13/

c++语言中,“&”符号有4种用途:逻辑与运算符按位与运算符取地址运算符引用标识符。前三种作用在c语言和c++语言中是共有的,而第4种作用是c++中特有的。下边对这4种用途做个介绍。

一、几个相关的概念

1、运算符

c++运算符是指用于执行程序代码运算的符号,其作用是告诉编译器执行特定的数学或逻辑操作的符号。

常见的运算符有:算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符,以及其他一系列运算符。

算数运算符:+、-、*、/、%、++、--

关系运算符:>、<、==、>=、<=、!=

逻辑运算符:&&、||、!

位运算符:<<、>>、~、|、^、&

赋值运算符:=

2、表达式

 C ++语言中的表达式是由符合 C ++语法规定的运算对象(包括常量、变量、函数调用传回的值等)、运算符、圆括号组成的有意义的算式。

常用的表达式包括:算数表达式、关系表达式、逻辑表达式、赋值表达式。

算数表达式:用算符运算符和圆括号将运算对象(也称操作数)连接起来的、符合C语法规则的式子。

赋值表达式:由赋值运算符将一个变量和一个表达式连接起来的式子称为赋值表达式。

关系表达式:用关系运算将两个表达式(可以是算数表达式、逻辑表达式、赋值表达式)或变量、常量连接起来的式子。

逻辑表达式:用逻辑运算符将关系表达式或逻辑量连接起来的式子。

二、"&"符号的4个作用

1、逻辑与运算符

格式:操作数1 && 操作数2 (操作数1、操作数2为两个逻辑变量)

逻辑与运算符为2个相连的“&”符号:&&,这是个双目运算符,它要求有两个操作数(操作数可以是关系表达式或逻辑量),两个操作数经与运算后的结果仍为逻辑值。

例1:

int main()
{bool A,B,C;A=true;B=false;C=A && B;cout << C << endl;return 0;
}

运行结果:

0

2、按位与运算符

格式:操作数1 & 操作数2(操作数1、操作数2为两个算数变量)

按位与运算符为1个“&”符号:&,这也是双目运算符,它要求两个操作数是算数量,计算的结果是算数值。

例2:

int main()
{int a=3,b=2,c;c=a & b;cout << c << endl;return 0;
}

运行结果:

2

3、取地址运算符

格式:&变量名(此处变量为数据型变量)

取地址的结果为一个地址型的数据,与指针类型相同。

例3:

int main()
{int a=3,*p;p=&a;cout << p << endl;return 0;
}

运行结果:

0x73ff08

4、引用标志符

格式:数据类型 & 变量名=已声明变量名

引用相当于给一个已知变量另外取一个变量名,两个变量共用一个地址,当其中一个变量重新赋值后,地址内存储的内容发生变化,所以另一个变量的值也就发生了变化。

还需要注意的是:引用声明的同时必须赋值。

例4:

int main()
{int a=3;int &b=a;cout << a << b << endl;a=5;cout << a << b << endl;b=7;cout << a << b << endl;return 0;
}

运行结果:

3 3
5 5
7 7

(全文结束)


http://www.ppmy.cn/devtools/168416.html

相关文章

Git:速查手册

Git&#xff1a;速查手册 1.基础知识四个区域文件状态基本概念特殊文件GitFlow 2.CMD初始化设置创建仓库添加与提交撤销与恢复状态与差异远程仓库操作分支Stash: 1.基础知识 四个区域 工作区&#xff08;Working Directory&#xff09;&#xff1a;你在电脑里能实际看到的目录。…

ubuntu 没有网卡的解决方案

(1) 输入sudo service network-manager stop (2) sudo rm /var/lib/NetworkManager/NetworkManager.state (3) sudo service network-manager start (4) sudo vim /etc/NetWorkManager/NetworkManager.conf&#xff0c;将其中的managedfalse改为managedtrue 或者使用gedit&…

一窥DeepSeek开源EPLB项目:揭开技术背后的面纱

摘要 在DeepSeek开源DualPipe项目的同一天&#xff0c;EPLB项目也正式对外公开。EPLB&#xff08;Enhanced Pipeline Balancing&#xff09;并非一蹴而就的奇迹&#xff0c;而是经过长时间的研发与优化。该项目旨在通过改进管道平衡机制&#xff0c;提升系统的稳定性和效率。本…

【蓝桥杯】省赛:神奇闹钟

思路 python做这题很简单&#xff0c;灵活用datetime库即可 code import os import sys# 请在此输入您的代码 import datetimestart datetime.datetime(1970,1,1,0,0,0) for _ in range(int(input())):ls input().split()end datetime.datetime.strptime(ls[0]ls[1],&quo…

java 使用命令创建jar的常用参数整理

在Java中&#xff0c;创建JAR文件的命令是jar。以下是常用参数的表格展示&#xff1a; 参数信息含义使用场景使用示例c创建新的JAR文件用于创建一个新的JAR文件当需要打包类文件和资源文件时jar cf myapp.jar MyClass.classt列出JAR文件内容显示JAR文件中的内容列表查看JAR文件…

ABAP PDF预览

画个屏幕 PDF JPG TXT都可以参考预览&#xff0c;把二进制流传递给标准函数就行 *&---------------------------------------------------------------------* *& Report YDEMO2 *&---------------------------------------------------------------------* *&am…

深入解析 SQL 事务:确保数据一致性的关键

SQL 事务 什么是 SQL 事务&#xff1f;事务的 ACID 特性原子性&#xff08;Atomicity&#xff09;:示例&#xff1a; 一致性&#xff08;Consistency&#xff09;:示例&#xff1a; 隔离性&#xff08;Isolation&#xff09;:持久性&#xff08;Durability&#xff09;:示例&am…

免费看付费电影网站制作,高清电影集合搜索引擎网站

引言 在当今数字化时代&#xff0c;电影已经成为人们日常生活中不可或缺的一部分。然而&#xff0c;随着各大视频平台推出付费会员制度&#xff0c;许多用户开始寻找免费观看付费电影的途径。本文将详细介绍如何制作一个免费看付费电影的网站&#xff0c;并打造一个高清电影集…