【C++造神计划】运算符
1 赋值运算符
赋值运算符的功能是将一个值赋给一个变量
int a = 5; // 将整数 5 赋给变量 a
运算符左边的部分叫作 lvalue(left value),右边的部分叫作 rvalue(right value)
-
左边 lvalue 必须是一个变量
-
右边 rvalue 可以是一个常量、一个变量、一个运算(operation)的结果或是前面几项的任意组合
-
赋值运算符永远是将右边的值赋给左边,不会反过来。
-
将变量 b(rvalue)的值赋给变量 a (lvalue),不论 a 当时存储的是什么值
-
只是将 b 的数值赋给 a,以后如果 b 的值改变了,并不会影响到 a 的值
Example 1
-
C++ 拥有而其他语言没有的一个特性是赋值符(=)可以被用作另一个赋值符的 rvalue(或 rvalue的一部分)
// 先将 5 赋给变量 b,然后把前面对b的赋值运算的结果(即 5)加上2 再赋给变量 a,这样最后a中的值为7
a = 2 + (b = 5);
Example 2
a = b = c = 5; //将5同时城给3个变量a、b和c
2 数学运算符
数学运算符
-
+(加,adldition)
-
-(减,subtraction)
-
*(乘,multiplicu∶.on)
-
/(除,division)
-
%(取模,module)
3 组合运算符
组合运算符(+=、 -、* 和 /= 及其他),这些运算符使得只用一个基本运算符就可以改写变量的值
value += increase; // 等同于value = value + increase
a -= 5;
a /= b;
price *= unita + 1; // 等同于price = price * (unita + 1);
4 递增和递减
-
递增(increase)运算符(++)
-
递减(decrease)运算符(--)
它们使得变量中存储的值加 1或减1,分别等同于+=1和-=1
示例
a++;
a += 1;
a = a+1;
-
注意 a++ 和 ++a 在运算式中代表不同的意思∶
-
前缀(++a),变量 a 的值先增加,再计算整个表达式的值
-
后缀(a++),变量 a 的值在表达式计算后才增加
-
#include <iostream>
using namespace std;int main()
{int a = 3; // a = 3cout << a << endl;int b = ++a; // a = 4, b = a = 4cout << a << endl;cout << b << endl;int c = a++; // c = a = 4, a + 1 = 5cout << a << endl;cout << c << endl;return 0;
}
5 条件运算符(三目运算符)
语法格式
condition ? result1 : result2
如果条件为true,整个表达式返回result1,否则返回result2。
7==5 ? 4:3 // 返回3,因为7不等于5.
7=-5+2 ? 4:3 // 返回4,因为7等于5+2。
5>3 ? a:b // 返回a,因为5大于3。
a>b ? a:b // 返回较大值,a或b。
#include <iostream>
using namespace std;int main ()
{int a,b,c;a=2;b=7;c = (a>b) ? a : b;cout << c <<endl;return 0;
}
6 比较运算符
比较运算的结果是一个 bool 值,根据运算结果的不同,它的值只能是 true 或 false
-
== 相等(Equl)
-
!= 不等(Different)
-
\> 大于(Greater than)
-
< 小于(Lessthan)
-
\>= 大于等于(Greater or equal than)
-
<= 小于等于(Less or equal than)
示例
(7 == 5)将返回 false
(5 > 4)将返回 true
(3 != 2)将返回 true
(6 > 6)将返回 false#include <stdio.h>int main()
{bool var = (7==5);printf("value of var: %s.\n", var==true? "true" : "false");return 0;
}
在 ANSI-C++ 标准出现之前,许多编译器中,就像 C 语言中,关系运算并不返回值为 true 或 false 的 bool 值,而是返回一个整型数值为结果,它的数值可以为 0,代表 false,或一个非0数值(通常为1),代表 true
7 逻辑运算符
-
!: 等同于 boolean 运算 NOT (取非) -
&&: 逻辑与运算(AND) -
||: 逻辑或运算(OR)
示例
!true // 返回 false
!false // 返回 true#include <stdio.h>int main()
{bool var = (!true);printf("value of var: %s.\n", var==true? "true" : "false");int a = 10;var = (a < 0 || a > 10);printf("value of var: %s.\n", var==true? "true" : "false");return 0;
}
8 逗号运算符
逗号运算符(,)用来分开多个表达式,并只取最右边的表达式的值返回
Example
a = (b = 3, b + 2);
这行代码首先将 3 赋值给变量 b,然后将 b+2 赋值给变量 a。所以最后变量 a 的值为 5,而变量 b 的值为 3
9 变量类型转换运算符
-
变量类型转换运算符可以将一种类型的数据转换为另一种类型的数据
-
在原转换的表达式前面加用括号"()"括起来的新数据类型
Example
int i;
float f = 3.14;
i = (int)f;
相关文章:
【C++造神计划】运算符
1 赋值运算符 赋值运算符的功能是将一个值赋给一个变量 int a 5; // 将整数 5 赋给变量 a 运算符左边的部分叫作 lvalue(left value),右边的部分叫作 rvalue(right value) 左边 lvalue 必须是一个变量 右边 rval…...
Cortex-M3/M4处理器的bit-band(位带)技术
ARM Cortex-M3/M4的位带(Bit-Band)技术是一种内存映射技术,它允许对单个位进行直接操作,而不需要对整个字(通常是32位)进行操作。这项技术主要用于对特定的位进行高效的读写,特别是在需要对GPIO…...
【TOP】IEEE旗下1区,影响因子将破8,3个月录用,CCF推荐,性价比高!
计算机类 ● 好刊解读 IEEE出版社、中科院2区TOP,CCF推荐,今天推荐的期刊可谓buff叠满,好刊质量靠谱,有意向评职晋升毕业作者可重点关注: 01 期刊简介 ✅出版社:IEEE ✅影响因子:7.5-8.0 ✅…...
赚钱游戏 2.0.1 版 (资源免费)
没有c编辑器的可以直接获取资源来玩 #include <iostream> #include <string> #include <windows.h> #include <conio.h> #include <fstream> #include <ctime> #include <time.h> #include <stdio.h> #include <cstring&g…...
服务调用-微服务小白入门(4)
背景 各个服务应用,有很多restful api,不论是用哪种方式发布,部署,注册,发现,有很多场景需要各个微服务之间进行服务的调用,大多时候返回的json格式响应数据多,如果是前端直接调用倒…...
代码随想录算法训练营第三十六天| 435. 无重叠区间、 763.划分字母区间、56. 合并区间
435 题目: 给定一个区间的集合 intervals ,其中 intervals[i] [starti, endi] 。返回 需要移除区间的最小数量,使剩余区间互不重叠 。 题目链接:435. 无重叠区间 - 力扣(LeetCode) 思路: …...
【AIGC调研系列】rerank3是什么
Rerank 3是一个针对企业搜索和检索辅助生成(RAG)系统优化的新型基础模型,它支持多语种、多结构数据搜索,并提供高精度的语义重排。通过这种方式,Rerank 3能够大幅提升响应准确度和降低延迟,同时大幅降低成本…...
Linux下网络编程基础知识--协议
网络基础 这一个课程的笔记 相关文章 协议 Socket编程 高并发服务器实现 线程池 协议 一组规则, 数据传输和数据的解释的规则。 比如说依次发送文件的文件名, 文件的大小, 以及实际的文件, 这样规定发送一个文件的顺序以及发送的每一个部分的格式等可以算是一种协议 型协议 …...
在 VS Code 中使用 GitHub Copilot
Code 结合使用。 GitHub Copilot 是什么 GitHub Copilot 是一个可以帮助你更简单、更快速地编写代码的工具,由 GPT-3 提供支持。你只需编写所需代码的描述——例如,编写一个函数来生成一个随机数,或对一个数组进行排序——Copilot 就会为你…...
使用spring-ai快速对接ChatGpt
什么是spring-ai Spring AI 是一个与 Spring 生态系统紧密集成的项目,旨在简化在基于 Spring 的应用程序中使用人工智能(AI)技术的过程。 简化集成:Spring AI 为开发者提供了方便的工具和接口,使得在 Spring 应用中集…...
免费的 ChatGPT 网站(六个)
🔥博客主页: 小羊失眠啦. 🎥系列专栏:《C语言》 《数据结构》 《C》 《Linux》 《Cpolar》 ❤️感谢大家点赞👍收藏⭐评论✍️ 文章目录 一、insCode二、讯飞星火三、豆包四、文心一言五、通义千问六、360智脑 现在智能…...
arm内核驱动-中断
先介绍个东西 ctags 这个工具可以像keil一样在工程里查找跳转,帮我们找到我们想要的东西。 安装教程可以找到,这里只讲怎么用。 在工程目录(包含所有你会用到的头文件等)下,先加载这个命令,可能要等待…...
第十五届蓝桥杯大赛软件赛省赛 C/C++ 大学 B 组
试题 C: 好数 时间限制 : 1.0s 内存限制: 256.0MB 本题总分:10 分 【问题描述】 一个整数如果按从低位到高位的顺序,奇数位(个位、百位、万位 )上 的数字是奇数,偶数位(十位、千位、十万位 &…...
kotlin编译版本
Kotlin和kapt的流行版本通常随着时间而变化,随着新版本的发布,更多的开发者会迁移到这些新版本。不过,由于Kotlin对向后兼容性的强调,大多数近期的Kotlin版本都支持Java 8。 截至本回答的知识截止日期(2023年ÿ…...
【C#】 删除首/尾部字符
代码 static void Main(string[] args){string str "123abc";string strdelete "abc";string str1 str.Trim(1);string strc str1.Trim(c);string str11 str1.TrimStart(1);string strcc str1.TrimEnd(c);string strabc str.Trim(strdelete.ToCharA…...
第十五篇【传奇开心果系列】Python自动化办公库技术点案例示例:深度解读Python 自动化处理图像在各行各业的应用场景
传奇开心果博文系列 系列博文目录Python自动化办公库技术点案例示例系列 博文目录前言一、行业应用场景介绍二、 **计算机视觉研究与开发示例代码**三、人工智能与机器学习示例代码四、医疗健康领域示例代码五、制造业与质量控制示例代码六、农业与环境科学示例代码七、电子商务…...
什么是MOV视频格式?如何把MP4视频转MOV视频格式?
一,前言 当然可以,MP4视频可以转换为MOV格式。这两种格式都是常见的视频文件格式,它们都可以用于存储和播放视频内容。虽然它们的编码方式和特性有所不同,但使用合适的视频转换工具可以轻松地将MP4视频转换为MOV格式。 二&#…...
整理的微信小程序日历(单选/多选/筛选)
一、日历横向多选,支持单日、双日、三日、工作日等选择 效果图 wxml文件 <view class"calendar"><view class"section"><view class"title flex-box"><button bindtap"past">上一页</button&…...
Unity 人形骨骼动画模型嘴巴张开
最近搞Daz3D玩,导入后挂上动画模型嘴巴张开,其丑无比。 Google了一下,得知原因是Unity没有对下巴那根骨骼做控制,动画系统就会把它放到默认的位置,嘴巴就张开了。找到了3种解决办法。 1.移除动画中对下巴这个骨骼的转…...
Python爬虫-京东商品评论数据
前言 本文是该专栏的第68篇,后面会持续分享python爬虫干货知识,记得关注。 在本专栏之前,笔者有详细介绍京东滑块验证码的解决方法,感兴趣的同学,可以直接翻阅文章《Python如何解决“京东滑块验证码”(5)》进行查看。 而本文,笔者以京东商品详情页的评论数据为例,通过…...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试
作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...
Qt Widget类解析与代码注释
#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码,写上注释 当然可以!这段代码是 Qt …...
Frozen-Flask :将 Flask 应用“冻结”为静态文件
Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是:将一个 Flask Web 应用生成成纯静态 HTML 文件,从而可以部署到静态网站托管服务上,如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...
现代密码学 | 椭圆曲线密码学—附py代码
Elliptic Curve Cryptography 椭圆曲线密码学(ECC)是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础,例如椭圆曲线数字签…...
【决胜公务员考试】求职OMG——见面课测验1
2025最新版!!!6.8截至答题,大家注意呀! 博主码字不易点个关注吧,祝期末顺利~~ 1.单选题(2分) 下列说法错误的是:( B ) A.选调生属于公务员系统 B.公务员属于事业编 C.选调生有基层锻炼的要求 D…...
WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成
厌倦手动写WordPress文章?AI自动生成,效率提升10倍! 支持多语言、自动配图、定时发布,让内容创作更轻松! AI内容生成 → 不想每天写文章?AI一键生成高质量内容!多语言支持 → 跨境电商必备&am…...
Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!
一、引言 在数据驱动的背景下,知识图谱凭借其高效的信息组织能力,正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合,探讨知识图谱开发的实现细节,帮助读者掌握该技术栈在实际项目中的落地方法。 …...
基于IDIG-GAN的小样本电机轴承故障诊断
目录 🔍 核心问题 一、IDIG-GAN模型原理 1. 整体架构 2. 核心创新点 (1) 梯度归一化(Gradient Normalization) (2) 判别器梯度间隙正则化(Discriminator Gradient Gap Regularization) (3) 自注意力机制(Self-Attention) 3. 完整损失函数 二…...
uniapp 小程序 学习(一)
利用Hbuilder 创建项目 运行到内置浏览器看效果 下载微信小程序 安装到Hbuilder 下载地址 :开发者工具默认安装 设置服务端口号 在Hbuilder中设置微信小程序 配置 找到运行设置,将微信开发者工具放入到Hbuilder中, 打开后出现 如下 bug 解…...
