c++运算符

news2024/9/25 11:17:02

文章目录

  • 运算符
    • 位运算符
    • 类型转换

运算符

#include<iostream>
using namespace std;

int main()
{
	// 算术运算符
	cout << "1 + 2 = " << 1 + 2 << endl; 
	cout << "1 + 2 - 3 * 4 = " << 1 + 2 - 3 * 4 << endl;
	
	short a = 3;
	long long b = 22345;
	cout << "a * b = " << a * b << endl;  // short 会转化为long long 再计算
	
	// 复合运算
	sum += a;

	// 递增递减运算符
	int i = 0;
	j = ++i; //j = 1,先+再返回
	k = i++; //k = 0,先返回再+
	
	// 逻辑运算符
	!(1 < 2 && 3 > 5); //逻辑非
	1 < 2 && 3 > 5; //逻辑与 
	1 < 2 || 3 > 5; //逻辑或
	// 短路求值
	// 逻辑运算会从左边开始计算,如果左侧可以决定结果,则右侧不做计算。

	// 条件运算符
	i = 0;
	cout << (1 < 2 && ++i) ? "true" : "false" << endl;
}

位运算符

在这里插入图片描述
移位运算
在这里插入图片描述
在这里插入图片描述

unsigned char bits = 0xb5;
cout << "bits左移两位:" << (bits << 2) << endl; //乘4
cout << "bits左移两位:" << hex << (bits << 2) << "\n" << dec << (bits << 2) << endl; //hex和dec是控制输出流

位逻辑运算
在这里插入图片描述
在这里插入图片描述
判断此处~uc1是多少:
int类型–》看首位–》1(负数)–》负数是以补码形式存储–》补码求源码(-1再取反)–》最后四位(1010–>1001–>0110)–》所以 ~uc1 其实是 -6

类型转换

隐式类型转换

short s = 12.3 + 25;
cout << "s = " << s << endl;
cout << "s长度为:" << sizeof(s) << endl;
cout << "12.3 + 25 = " << (12.3 + 25) << endl;
cout << "12.3 + 25 长度为:" << sizeof(12.3 + 25) << endl;
//输出
// s = 37
// s长度为:2
// 12.3 + 25 = 37.3
// 12.3 + 25 长度为:8

// 关系运算中的类型转换
int a = -1;
cout << ((0 < a < 100) ? "true" : "false") << endl; //true,因为逻辑运算从左向右,0<a无论是true还是false,与100比较返回true

强制类型转换

int total = 20, num = 6;
double avg = total / 6;
cout << avg << endl;

// c语言风格
cout << (double)total / num << 6;

// c++风格
cout << double(total) / num << 6;

//c++强制类型转换运算符
cout << static_cast<double>(total) / num << 6;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1074483.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

mfoc-hardnested在visual studio2022编译

1、点击mfoc-hardnested.sln 2、没有clang LLVM (clang-cl) (未安装) 打开installer 点击修改: 单个组件中搜索clang &#xff0c;安装即可 3、编译 4、main函数 5、mfoc-hardnested.exe使用

v-on事件处理指令;简写@事件名

一、v-on 给元素&#xff08;标签&#xff09;绑定事件监听器 oninput、onclick、onchange、onblur等 1、 完整方式v-on:事件名“函数/方法” 2、简写方式事件名“函数/方法”&#xff0c;注意符号不能加冒号“&#xff1a;” input /click/change/blur ..... 代码如下&#xf…

为什么不建议使用SELECT * ?

“不要使用SELECT ”几乎已经成为数据库使用的一条金科玉律&#xff0c;就连很多公司也明确表示不得使用作为查询的字段列表&#xff0c;更是让这条规则拥有了权威的加持。 为什么不建议直接使用SELECT *&#xff1f;我们总得搞清楚这其中的原因吧&#xff0c;不要别人说不建议…

vue3 组件v-model绑定props里的值,修改组件的值要触发回调

很早之前就写了&#xff0c;一直没写篇博客记录下 <select v-model"typeVal" />const emit defineEmits([update:type]); const props defineProps({type: { type: String, default: }, });const typeVal computed({get() {return props.type;},set(value…

Flutter:open_file打开本地文件报错问题

相关插件及版本&#xff1a; open_file: ^3.2.1 问题&#xff1a; 项目中一直用的这个插件&#xff0c;突然发现在安卓高版本不能正常使用&#xff0c;报权限问题permissionDenied&#xff0c;断点调试提示相关权限是MANAGE_EXTERNAL_STORAGE&#xff0c;申请权限之后还是不行&…

PDF有限制不能复制怎么办?

大家现在接触PDF文件越来越多&#xff0c;有的时候在网上下载的PDF文件打开之后&#xff0c;发现选中文字之后无法复制。甚至其他功能也都无法使用&#xff0c;这是怎么回事&#xff1f;该怎么办&#xff1f; 当我们发现文件打开之后&#xff0c;编辑功能无法使用&#xff0c;很…

探索视觉系统工作原理,聚焦机器人应用“新视界”

原创 | 文 BFT机器人 01 视觉系统&#xff1a;机器人的“眼睛” 视觉系统是一个非常复杂的系统&#xff0c;包括照明系统、镜头、摄像系统和图像处理系统。机器视觉系统主要由三部分组成&#xff1a;图像的获取、图像的处理和分析、输出或显示。 从功能上看&#xff0c;典型的…

Allegro批量剪断走线操作

在用Allegro设计 PCB过程中,有时候由于原理图改动,导致布局的改动。这就会导致走完的线要重新走,对于差分对因为前半部分的走线是不用重新走的。那就可以使用剪断后面部分的线,然后删除,提高走线的效率。那如何批量剪断走线呢? (1)选择菜单Manufacture→Drafting→Dele…

ROS2学习(六)Bag回放使用plotjugger

Plotjugger Plotjugger是一个类似rqt_plot的可视化工具&#xff0c;但PlotJuggler拥有更强大和好用的功能。你可以导入文本文件让它显示文本文件中的数据&#xff0c;可以导入csv等各种格式的文件&#xff0c;支持画出数据曲线2. Bag回放 使用Plotjugger 可以导入ros的bag包…

docker pull 拉取镜像报错

报错信息&#xff1a;Error response from daemon: toomanyrequests: You have reached your pull rate limit. You may increase the limit by authenticating and upgrading: https://www.docker.com/increase-rate-limit 简单理解就是拉取镜像失败&#xff0c;外部原因&…

HDLbits: Lfsr5

我的错误写法&#xff0c;半成品&#xff0c;完全错误&#xff1a; module top_module(input clk,input reset, // Active-high synchronous reset to 5h1output [4:0] q ); dff dff_1(clk, 0 ^ q[0],q[4]);dff dff_2(clk, q[4] ,q[3]);dff dff_3(clk, q[3] ^ q[0] ,q[2]);…

2023年中国棋牌桌市场规模及行业前景:更具创意和功能是未来趋势[图]

棋牌桌行业是指涉及棋牌类游戏的桌面制造、销售和相关服务的产业&#xff0c;它包括生产和销售各种类型的棋牌桌&#xff0c;如象棋桌、扑克桌、麻将桌等&#xff0c;以及提供与这些游戏相关的配件和设备。 棋牌桌行业分类 资料来源&#xff1a;共研产业咨询&#xff08;共研网…

Android多线程学习:多线程同步

一、多线程 多线程就是指一个进程中同时有多个线程正在执行。 二、多线程优缺点&#xff1a; 优点&#xff1a; 1、提高程序运行效率&#xff0c;如同时上传多个图片&#xff1b; 2、耗时操作放子线程执行&#xff0c;提高主线程执行效率&#xff0c;无需等待。 缺点&#…

【Spring MVC研究】聊聊web绑定器(WebDataBinder、@InitBinder)

文章目录 1. 绑定器的作用2. 使用方式&#xff08;测试代码&#xff09;InitBinder3. 相关的几个核心类的真实类型4. 原理4.1. 正向推理4.2. 反向推理4.3. 正向反向推理结合分析4.4. 重点来了&#xff08;如果前后衔接是接4.3章节&#xff09;4.4.1. InitBinder注解的注册4.4.2…

vue学习-12路由组件的基本使用

vue的路由是vue,js官方的路由管理器&#xff0c;其主要用于构建单页应用程序&#xff0c;允许你通过定义路由来管理不同页面之间的导航。 1.引入路由 在使用vue的路由之前&#xff0c;一般我们在创建vue项目的时候&#xff0c;是可以选择添加路由的&#xff0c;只要你选择了y…

antd树型表格的逐级展开折叠(每次展开都只展开到当前未展开的最小层级,每次折叠都只折叠到当前未折叠的最大层级)

需求有些变态&#xff0c;我们用一段话和一张图来演示下 效果如下&#xff1a; 如遇到每级展开层级不一致的&#xff0c;如【2级2】展开到第3级&#xff0c;那此时点击展开&#xff0c;所有已展开的不动&#xff0c;将未展开到第3级的其他元素全部展开到第3级 效果如下&…

东土科技与诺贝尔物理学奖2006年度得主斯穆特签约,加快布局工业AI

近日&#xff0c;诺贝尔物理学奖2006年度得主乔治.斯穆特教授与东土科技正式签约&#xff0c;成为东土科技工业人工智能顾问。 乔治斯穆特&#xff08;George Fitzgerald Smoot&#xff09;教授也曾获得爱因斯坦奖&#xff0c;在宇宙学、大数据、生物医学诊断仪器以及人工智能…

第一章:随机过程预备知识

第一章&#xff1a;随机过程预备知识 随机过程属于概率论的分支学科。概率论注重结果&#xff1a;上涨的概率&#xff0c;下跌的概率。随机过程注重过程&#xff0c;随着时间的推移&#xff0c;结果的演化过程。 1.1 随机事件与概率的定义 事件的本质是集合&#xff0c;有关集…

workerman的基本用法(示例详解)

workerman是什么&#xff1f; Workerman是一个异步事件驱动的PHP框架&#xff0c;具有高性能&#xff0c;可轻松构建快速&#xff0c;可扩展的网络应用程序。支持HTTP&#xff0c;Websocket&#xff0c;SSL和其他自定义协议。支持libevent&#xff0c;HHVM&#xff0c;ReactPH…

朋友一口气拿下字节27K的offer,实名羡慕了....

最近有朋友去字节面试&#xff0c;面试前后进行了20天左右&#xff0c;包含4轮电话面试、1轮笔试、1轮主管视频面试、1轮hr视频面试。 据他所说&#xff0c;80%的人都会栽在第一轮面试&#xff0c;要不是他面试前做足准备&#xff0c;估计都坚持不完后面几轮面试。 其实&…