首页 > 编程语言 >C++学习,运算符

C++学习,运算符

时间:2024-08-22 09:58:27浏览次数:14  
标签:学习 操作数 左边 C++ 运算符 按位 赋值

运算符是告诉编译器执行特定数学或逻辑函数的符号。 C++语言内置运算符丰富,提供以下类型的运算符 :

  • 算术运算符
  • 关系运算符
  • 逻辑运算符
  • 按位运算符
  • 赋值运算符
  • 其它运算符

 

算术运算符 (Arithmetic Operators)

下表显示了C++语言支持的所有算术运算符。 假设变量A=10,变量B=20:

操作者描述
+添加两个操作数。A + B = 30
从第一个减去第二个操作数。A - B = -10
*将两个操作数相乘。A * B = 200
/Divides numerator by de-numerator.B/A = 2
%模数运算符和整数除法后的余数。B%A = 0
++递增运算符将整数值增加1。A ++ = 11
--递减运算符将整数值减1。A-- = 9

 

关系运算符 (Relational Operators)

下表显示了C++支持的所有关系运算符。假设变量A=10,变量B=20:

操作者描述
==检查两个操作数的值是否相等。 如果是,则条件成立。(A == B)不是真的。
!=检查两个操作数的值是否相等。 如果值不相等,则条件成立。(A!= B)是真的。
>检查左操作数的值是否大于右操作数的值。 如果是,则条件成立。(A> B)不是真的。
<检查左操作数的值是否小于右操作数的值。 如果是,则条件成立。(A < B) 为真
>=检查左操作数的值是否大于或等于右操作数的值。 如果是,则条件成立。(A> = B)不是真的。
<=检查左操作数的值是否小于或等于右操作数的值。 如果是,则条件成立。(A <= B)是真的。

 

逻辑运算符 (Logical Operators)

下表显示了C++语言支持的所有逻辑运算符。 假设变量A=1,变量B=0:

操作者描述
&&称为逻辑AND运算符。 如果两个操作数都不为零,则条件成立。(A && B)是假的。
||称为逻辑OR运算符。 如果两个操作数中的任何一个非零,则条件变为真。(A || B)是真的。
!称为逻辑非运算符。 它用于反转其操作数的逻辑状态。 如果条件为真,则Logical NOT运算符将使其为false。!(A && B)是真的。

 

按位运算符 (Bitwise Operators)

按位运算符处理位并执行逐位运算。 &,|和^的真值表如下 -

pqp&qp | qp ^ q
00000
01011
11110
10011

 

 

赋值运算符

下表列出了 C++ 支持的赋值运算符:

操作者描述
=简单的赋值运算符,把右边操作数的值赋给左边操作数C = A + B 将把 A + B 的值赋给 C
+=加且赋值运算符,把右边操作数加上左边操作数的结果赋值给左边操作数C += A 相当于 C = C + A
-=减且赋值运算符,把左边操作数减去右边操作数的结果赋值给左边操作数C -= A 相当于 C = C - A
*=乘且赋值运算符,把右边操作数乘以左边操作数的结果赋值给左边操作数C *= A 相当于 C = C * A
/=除且赋值运算符,把左边操作数除以右边操作数的结果赋值给左边操作数C /= A 相当于 C = C / A
%=求模且赋值运算符,求两个操作数的模赋值给左边操作数C %= A 相当于 C = C % A
<<=左移且赋值运算符C <<= 2 等同于 C = C << 2
>>=右移且赋值运算符C >>= 2 等同于 C = C >> 2
&=按位与且赋值运算符C &= 2 等同于 C = C & 2
^=按位异或且赋值运算符C ^= 2 等同于 C = C ^ 2
|=按位或且赋值运算符C |= 2 等同于 C = C | 2

 

标签:学习,操作数,左边,C++,运算符,按位,赋值
From: https://blog.csdn.net/xuann/article/details/141404934

相关文章

  • C语言学习,预处理器
    C预处理器不是编译器的一部分,是编译过程中的一个单独步骤。C预处理器是一个文本替换工具,它指示编译器在编译前进行必要的预处理。 C预处理器所有命令都以井号(#)开头,它必须是第一个非空白字符,以下列出了重要的预处理程序指令:No.指令和说明1#define替换预处理器宏。2#inc......
  • C++学习,数据类型
    编写程序时,需要使用各种变量来存储信息,变量是用于存储值的内存。创建变量时,在内存中保留了一些空间。存储各种数据类型的信息,如字符,宽字符,整数,浮点,双浮点,布尔等。根据变量的数据类型,系统分配内存并决定可以存储的内容。 内置类型C++提供了丰富的内置和用户定义的数据类......
  • C++ queue(STL queue,队列)用法详解
    只能访问queue<T>容器适配器的第一个和最后一个元素。只能在容器的末尾添加新元素,只能从头部移除元素。许多程序都使用了queue容器。queue容器可以用来表示超市的结账队列或服务器上等待执行的数据库事务队列。对于任何需要用FIFO准则处理的序列来说,使用queue容器适......
  • c++高精度细剖
    深入剖析C++中的高精度计算是一个广泛且深入的主题,它涵盖了多种技术和策略,用于处理超过标准整数或浮点数类型能表示范围的数值。在这里,我将提供一个概括性的框架,涵盖高精度计算的基本概念、常见方法、实现细节以及可能的应用场景,但请注意,由于篇幅限制,这里无法直接达到“十万字......
  • 多模态学习之论文阅读:《Pre-gating and Contextual Attention Gate — A new fusion m
    《Pre-gatingandContextualAttentionGate—Anewfusionmethodformulti-modaldatatasks》 -2024.11 影响因子7.9  (一)要点提出一种新的多模态数据融合方法,即PCAG(Pre-gatingandContextualAttentionGate),以解决现有跨模态交互学习中的噪声问题和不确定性问......
  • 零基础学习人工智能—Python—Pytorch学习(七)
    前言本文主要讲神经网络的下半部分。其实就是结合之前学习的全部内容,进行一次神经网络的训练。神经网络下面是使用MNIST数据集进行的手写数字识别的神经网络训练和使用。MNIST数据集,是一个常用的手写数字识别数据集。MNIST数据集包含60,000张28x28像素的灰度训练图像和......
  • requests爬虫学习
    #爬虫的过程,就是模仿浏览器的行为,往目标站点发送请求,接收服务器的响应数据,提取需要的信息,并进行保存的过程。#上网的全过程:#  普通用户:#    打开浏览器-->往目标站点发送请求-->接收响应数据-->渲染到页面上。#  爬虫程序:#    模......
  • C++ wsl2 ubuntu 环境配置
    目前学习C++,配合Ubuntu进行开发,IDE使用Clion,这里记录一下环境准备WSL2C++一般是用在linux下,这里就用Ubuntu进行开发,考虑到window系统,这里准备用wsl2.虚拟化wsl2要系统支持虚拟化,一般在bios中进行处理,成功之后,任务管理器-->性能适用于Linux的Windows子系统wsl更新ws......
  • 再见了Try-Catch,ECMA增加安全赋值运算符提案
    JavaScript的错误处理即将获得重大升级。新的ECMAScript安全赋值运算符提案(?=)旨在通过减少对传统try-catch代码块的需求,来简化您的代码。让我们一起来看看这个提案如何简化您的错误管理,并使您的JavaScript代码更干净、更高效。简单示例传统的try-catch代码块常常导致代......
  • 多模态学习之论文阅读:《Systematic comparison of deep-learning based fusion strate
    《Systematiccomparisonofdeep-learningbasedfusionstrategiesfor multi-modal ultrasoundindiagnosisof liver cancer》 -2024.10 NEUROCOMPUTING 影响因子7.9(一)多模态数据构成研究设计了“病变配对”方法来构建数据集,包括B模式超声、剪切波弹性成像(SWE)和......