当前位置: 首页 > 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; 人生…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API&#xff0c;用于在函数组件中使用 state 和其他 React 特性&#xff08;例如生命周期方法、context 等&#xff09;。Hooks 通过简洁的函数接口&#xff0c;解决了状态与 UI 的高度解耦&#xff0c;通过函数式编程范式实现更灵活 Rea…...

反向工程与模型迁移:打造未来商品详情API的可持续创新体系

在电商行业蓬勃发展的当下&#xff0c;商品详情API作为连接电商平台与开发者、商家及用户的关键纽带&#xff0c;其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息&#xff08;如名称、价格、库存等&#xff09;的获取与展示&#xff0c;已难以满足市场对个性化、智能…...

Unity3D中Gfx.WaitForPresent优化方案

前言 在Unity中&#xff0c;Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染&#xff08;即CPU被阻塞&#xff09;&#xff0c;这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案&#xff1a; 对惹&#xff0c;这里有一个游戏开发交流小组&…...

Frozen-Flask :将 Flask 应用“冻结”为静态文件

Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是&#xff1a;将一个 Flask Web 应用生成成纯静态 HTML 文件&#xff0c;从而可以部署到静态网站托管服务上&#xff0c;如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互

引擎版本&#xff1a; 3.8.1 语言&#xff1a; JavaScript/TypeScript、C、Java 环境&#xff1a;Window 参考&#xff1a;Java原生反射机制 您好&#xff0c;我是鹤九日&#xff01; 回顾 在上篇文章中&#xff1a;CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...

Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)

引言&#xff1a;为什么 Eureka 依然是存量系统的核心&#xff1f; 尽管 Nacos 等新注册中心崛起&#xff0c;但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制&#xff0c;是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

python执行测试用例,allure报乱码且未成功生成报告

allure执行测试用例时显示乱码&#xff1a;‘allure’ &#xfffd;&#xfffd;&#xfffd;&#xfffd;&#xfffd;ڲ&#xfffd;&#xfffd;&#xfffd;&#xfffd;ⲿ&#xfffd;&#xfffd;&#xfffd;Ҳ&#xfffd;&#xfffd;&#xfffd;ǿ&#xfffd;&am…...

Web 架构之 CDN 加速原理与落地实践

文章目录 一、思维导图二、正文内容&#xff08;一&#xff09;CDN 基础概念1. 定义2. 组成部分 &#xff08;二&#xff09;CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 &#xff08;三&#xff09;CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 &#xf…...

python报错No module named ‘tensorflow.keras‘

是由于不同版本的tensorflow下的keras所在的路径不同&#xff0c;结合所安装的tensorflow的目录结构修改from语句即可。 原语句&#xff1a; from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后&#xff1a; from tensorflow.python.keras.lay…...