当前位置: 首页 > news >正文

[开发|C++] C++的基本运算符说明笔记

基本运算符说明

C++是一种功能强大的编程语言,提供了多种运算符来执行各种基本操作。下面是一些常见的C++基本运算符及其说明:

  1. 算术运算符:
    +:加法运算符,用于执行两个操作数的相加操作。
    -:减法运算符,用于执行两个操作数的相减操作。
    *:乘法运算符,用于执行两个操作数的相乘操作。
    /:除法运算符,用于执行两个操作数的相除操作。
    %:取模运算符,返回两个操作数相除的余数。

  2. 关系运算符:
    ==:相等运算符,用于比较两个操作数是否相等。
    !=:不等运算符,用于比较两个操作数是否不相等。
    >:大于运算符,用于比较左操作数是否大于右操作数。
    <:小于运算符,用于比较左操作数是否小于右操作数。
    >=:大于等于运算符,用于比较左操作数是否大于等于右操作数。
    <=:小于等于运算符,用于比较左操作数是否小于等于右操作数。

  3. 逻辑运算符:
    &&:逻辑与运算符,用于执行逻辑与操作,当且仅当两个操作数都为真时结果为真。
    ||:逻辑或运算符,用于执行逻辑或操作,当且仅当两个操作数中至少一个为真时结果为真。
    !:逻辑非运算符,用于执行逻辑非操作,将操作数的值取反。

  4. 位运算符:
    &:按位与运算符,对操作数的每个位执行与操作。
    |:按位或运算符,对操作数的每个位执行或操作。
    ^:按位异或运算符,对操作数的每个位执行异或操作。
    <<:左移运算符,将操作数的所有位向左移动指定的位数。
    >>:右移运算符,将操作数的所有位向右移动指定的位数。

  5. 赋值运算符:
    =:赋值运算符,用于将右操作数的值赋给左操作数。
    +=:加法赋值运算符,相当于将左操作数与右操作数相加后再赋给左操作数。
    -=:减法赋值运算符,相当于将左操作数与右操作数相减后再赋给左操作数。
    *=:乘法赋值运算符,相当于将左操作数与右操作数相乘后再赋给。

基本运算符优先级说明

以下是C++中一些常见的基本运算符,按照优先级从高到低的顺序列出,并附上它们的结合性:

  1. 一元运算符:
    ++(后缀递增)和 --(后缀递减):从右到左结合。

  2. 乘性运算符:
    *(乘法)、 /(除法)和 %(取模):左结合。

  3. 加性运算符:
    +(加法)和 -(减法):左结合。

  4. 移位运算符:
    <<(左移)和 >>(右移):左结合。

  5. 关系运算符:
    <(小于)、>(大于)、 <=(小于等于)和 >=(大于等于):左结合。

  6. 相等性运算符:
    ==(相等)和 !=(不等):左结合。

  7. 位运算符:
    &(按位与):左结合。
    ^(按位异或):左结合。
    |(按位或):左结合。

  8. 逻辑运算符:
    &&(逻辑与):左结合。
    ||(逻辑或):左结合。

  9. 赋值运算符:
    =(赋值)及复合赋值运算符,如 +=-=*=/=%=<<=>>=&=^=|=:右结合。

运算符结合说明

在C++中,运算符具有不同的优先级,这决定了它们在表达式中的计算顺序。以下是一些常见的C++运算符,按照优先级从高到低的顺序列出:

  1. 一元运算符(从右到左结合):
    ++:后缀递增运算符
    --:后缀递减运算符
    ():函数调用运算符
    []:下标运算符
    .:成员访问运算符
    ->:成员指针访问运算符
    typeid:类型信息运算符
    sizeof:对象大小运算符
    new:动态分配运算符
    delete:动态释放运算符

  2. 乘性运算符(左结合):
    *:乘法运算符
    /:除法运算符
    %:取模运算符

  3. 加性运算符(左结合):
    +:加法运算符
    -:减法运算符

  4. 移位运算符(左结合):
    <<:左移运算符
    >>:右移运算符

  5. 关系运算符(左结合):
    <:小于运算符
    >:大于运算符
    <=:小于等于运算符
    >=:大于等于运算符

  6. 相等性运算符(左结合):
    ==:相等运算符
    !=:不等运算符

  7. 位与运算符(左结合):
    &:按位与运算符

  8. 位异或运算符(左结合):
    ^:按位异或运算符

  9. 位或运算符(左结合):
    |:按位或运算符

  10. 逻辑与运算符(左结合):
    &&:逻辑与运算符

  11. 逻辑或运算符(左结合):
    ||:逻辑或运算符

  12. 条件运算符(右结合):
    ? ::条件运算符

  13. 赋值运算符(右结合):
    =:赋值运算符
    +=:加法赋值运算符
    -=:减法赋值运算符
    *=:乘法赋值运算符
    /=:除法赋值运算符
    %=:取模赋值运算符
    <<=:左移赋值运算符
    >>=:右移赋值运算符
    &=:按位与赋值运算

相关文章:

[开发|C++] C++的基本运算符说明笔记

基本运算符说明 C是一种功能强大的编程语言&#xff0c;提供了多种运算符来执行各种基本操作。下面是一些常见的C基本运算符及其说明&#xff1a; 算术运算符&#xff1a; &#xff1a;加法运算符&#xff0c;用于执行两个操作数的相加操作。 -&#xff1a;减法运算符&#xf…...

抖音定位功能的作用

随着智能手机和社交网络的普及&#xff0c;人们日常生活中对于位置信息的需求也越来越高。而抖音作为一款以短视频为主的社交应用&#xff0c;其定位技术也备受关注。本文将就抖音的定位功能进行探究&#xff0c;介绍抖音如何获取、处理和利用用户的位置信息&#xff0c;并探讨…...

阿里 P9 推荐的 Spring 领域巅峰之作,直接颠覆了我对 Spring 的认知

写在前面 你第一次接触 spring 框架是在什么时候&#xff1f;相信很多人和我一样&#xff0c;第一次了解 spring 都不是做项目的时候用到&#xff0c;而是在网上看到或者是听到过一个叫做 spring 的框架&#xff0c;这个框架号称完爆之前的 structs 和 structs2&#xff0c;吸…...

R语言结构方程模型(SEM)在生态学领域中的实践应用

结构方程模型&#xff08;Sructural Equation Model&#xff09;是一种建立、估计和检验研究系统中多变量间因果关系的模型方法&#xff0c;它可以替代多元回归、因子分析、协方差分析等方法&#xff0c;利用图形化模型方式清晰展示研究系统中变量间的因果网络关系&#xff0c;…...

Java设计模式-模板方法模式

简介 在软件开发中&#xff0c;设计模式是一种被广泛采用的方法&#xff0c;用于解决常见的设计问题。模板方法模式是其中一种重要的设计模式之一&#xff0c;它提供了一种将算法的结构骨架固定&#xff0c;但允许子类实现具体步骤的机制。 模板方法模式是一种行为型设计模式…...

Start JDKFlightRecorder--人工翻译

可以同时运行多个JFR记录&#xff0c;并且每个JFR记录都可以使用不同的配置&#xff0c;你可以使用不同的JFR记录去捕获不同的事件集。但是&#xff0c;为了使JFR内部逻辑更加精简&#xff0c;生成的记录始终包含当时活动的所有记录的所有事件的并集。这意味着&#xff0c;运行…...

Python3安装pyhanlp最佳解决方法

1、Hanlp介绍 Hanlp是一款中文自然语言处理工具。Hanlp支持多种自然语言处理任务&#xff0c;包括分词、词性标注、命名实体识别、依存句法分析、情感分析、文本分类等。其主要优点包括&#xff1a; 高准确率&#xff1a;Hanlp采用了基于神经网络的分词方法&#xff0c;有效提…...

漏洞管理基础知识

漏洞管理对于端点安全至关重要&#xff0c;是在安全漏洞导致漏洞之前清除安全漏洞的最主动方法之一。 什么是漏洞 漏洞是软件中的错误代码段&#xff0c;会导致软件崩溃或以程序员从未预料到的方式做出响应。黑客可以利用漏洞对计算机系统进行未经授权的访问或对计算机系统执行…...

WBS项目分解的7大基本原则

制定和分解WBS&#xff0c;需要遵循的基本原则&#xff1a; 1、唯一性 每一项工作任务在WBS中是唯一的。 WBS项目分解的7大基本原则 2、负责制 每一项任务都需要明确责任人&#xff0c;一人负责&#xff0c;其他人参与。 3、可测量性 每一项任务都应该是可以量化和测量的&#…...

PoseiSwap IDO在Bounce上启动在即,如何参与?

目前&#xff0c;Nautilus Chain 生态基本完成测试&#xff0c;并即将在不久上线主网。PoseiSwap 作为 Nautilus Chain 上的首个 DEX&#xff0c;也即将面向市场并上线正式版本。我们看到&#xff0c; PoseiSwap 也正式发布了新的市场进程&#xff0c;基于其治理代币 POSE 的 I…...

Linux基本指令介绍

目录 前言 指令操作与图形化界面的对比 adduser passwd whoami ls指令 pwd指令 cd指令 touch指令 mkdir指令 rmdir指令 && rm 指令 man指令 cp指令 mv指令 cat&#xff08;显示文件内容&#xff08;全部&#xff09;&#xff0c;且不可修改的&#xff09;…...

C++服务器框架开发1——项目介绍/分布式/#ifndef与#pragma once

该专栏记录了在学习一个开发项目的过程中遇到的疑惑和问题。 其教学视频见&#xff1a;[C高级教程]从零开始开发服务器框架(sylar) C服务器开发1——项目介绍/分布式/#ifndef与#pragma once 项目介绍分布式#ifndef与#pragma once 最近开始学习下C的项目开发&#xff0c;找了很多…...

Tensorflow2基础代码实战系列之双层RNN文本分类任务

深度学习框架Tensorflow2系列 注&#xff1a;大家觉得博客好的话&#xff0c;别忘了点赞收藏呀&#xff0c;本人每周都会更新关于人工智能和大数据相关的内容&#xff0c;内容多为原创&#xff0c;Python Java Scala SQL 代码&#xff0c;CV NLP 推荐系统等&#xff0c;Spark …...

Python爬虫-快手photoId

前言 本文是该专栏的第49篇,后面会持续分享python爬虫干货知识,记得关注。 笔者在本专栏的上一篇,有详细介绍平台视频播放量的爬取方法。与该平台相关联的文章,笔者已整理在下方,感兴趣的同学可查看翻阅。 1. Python如何解决“快手滑块验证码”(4) 2. 快手pcursor 3. …...

软件测试人员如何为项目的质量保障兜底?看完你就明白了...

上线前层层保障 01文档管理 关键词&#xff1a;需求文档、设计文档、测试文档 1.需求和设计产出方为产品、开发&#xff0c;测试需要做好流程监督&#xff0c;这里重点说下测试文档。 2.测试文档&#xff0c;从业务领域来说&#xff0c;一般有测试计划、测试用例、业务总结文…...

《幸福关系的7段旅程》

关于作者 本书作者安德鲁∙马歇尔&#xff0c;英国顶尖婚姻咨询机构RELATE的资深专家&#xff0c;拥有 30年丰富的咨询经验&#xff0c;并为《泰晤士报》《观察家》和《星期日快报》撰写专栏文章。已出版19部作品&#xff0c;并被翻译成20种语言。 关于本书 《幸福关系的7段…...

使用Python中PDB模块中的命令来调试Python代码的教程

这篇文章主要介绍了使用Python中PDB模块中的命令来调试Python代码的教程,包括设置断点来修改代码等、对于Python团队项目工作有一定帮助&#xff0c;需要的朋友可以参考下 你有多少次陷入不得不更改别人代码的境地&#xff1f;如果你是一个开发团队的一员&#xff0c;那么你遇…...

Codeforces Round 764 (Div. 3)

比赛链接 Codeforces Round 764 A. Plus One on the SubsetB. Make APC. Division by Two and PermutationD. Palindromes ColoringE. Masha-forgetful A. Plus One on the Subset Example input 3 6 3 4 2 4 1 2 3 1000 1002 998 2 12 11output 3 4 1题意&#xff1a; 你可…...

四月,收割12家offer,面试也太容易了吧....

前言 下面是我根据工作这几年来的面试经验&#xff0c;加上之前收集的资料&#xff0c;整理出来350道软件测试工程师 常考的面试题。字节跳动、阿里、腾讯、百度、快手、美团等大厂常考的面试题&#xff0c;在文章里面都有 提到。 虽然这篇文章很长&#xff0c;但是绝对值得你…...

Xubuntu22.04之自动调节亮度护眼redshift(一百七十四)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中&#xff0c;时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志&#xff0c;到供应链系统的物流节点时间戳&#xff0c;时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库&#xff0c;其日期时间类型的…...

css实现圆环展示百分比,根据值动态展示所占比例

代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...

Xshell远程连接Kali(默认 | 私钥)Note版

前言:xshell远程连接&#xff0c;私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...

Module Federation 和 Native Federation 的比较

前言 Module Federation 是 Webpack 5 引入的微前端架构方案&#xff0c;允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多&#xff0c;如何一步解决&#xff0c;采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集&#xff08;每个目录代表一个类别&#xff0c;目录下是该类别的所有图片&#xff09;&#xff0c;你需要进行以下配置步骤&#x…...

相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)

【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...

技术栈RabbitMq的介绍和使用

目录 1. 什么是消息队列&#xff1f;2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...

安宝特案例丨Vuzix AR智能眼镜集成专业软件,助力卢森堡医院药房转型,赢得辉瑞创新奖

在Vuzix M400 AR智能眼镜的助力下&#xff0c;卢森堡罗伯特舒曼医院&#xff08;the Robert Schuman Hospitals, HRS&#xff09;凭借在无菌制剂生产流程中引入增强现实技术&#xff08;AR&#xff09;创新项目&#xff0c;荣获了2024年6月7日由卢森堡医院药剂师协会&#xff0…...

Java毕业设计:WML信息查询与后端信息发布系统开发

JAVAWML信息查询与后端信息发布系统实现 一、系统概述 本系统基于Java和WML(无线标记语言)技术开发&#xff0c;实现了移动设备上的信息查询与后端信息发布功能。系统采用B/S架构&#xff0c;服务器端使用Java Servlet处理请求&#xff0c;数据库采用MySQL存储信息&#xff0…...

C/C++ 中附加包含目录、附加库目录与附加依赖项详解

在 C/C 编程的编译和链接过程中&#xff0c;附加包含目录、附加库目录和附加依赖项是三个至关重要的设置&#xff0c;它们相互配合&#xff0c;确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中&#xff0c;这些概念容易让人混淆&#xff0c;但深入理解它们的作用和联…...