栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

【C++】运算符与表达式

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【C++】运算符与表达式

文章目录
  • 运算符与表达式
    •  运算符
      • 赋值运算符
      • 算术运算符
      • 关系运算符
      • 逻辑运算符
      • 位运算符
      • 运算符优先级
    •  表达式
  • if结构
  • switch

运算符与表达式  运算符 赋值运算符

单等号=
计算顺序从右向左

复合赋值运算符:+=、-=、*=、/=、%=等

算术运算符

一元运算符:++、–
如果++/–是单独的一条语句,那么前置和后置没有区别
在复杂语句中,前置++/–:将变量自增/自减1,然后在表达式中使用新值;后置++/–:在表达式中使用当前值,表达式运行完毕,变量再自增/自减1。
二元运算符:+、-、*、/、%

%取模时最终结果的符号与第一个操作数的符号一致

三元运算符:?:

string str=1>0?1:0;
关系运算符

>、<、>=、<=、==、!=等,结果为bool类型

逻辑运算符

位运算符



既然原码才是被人脑直接识别并用于计算表示的方式,为何还会有反码和补码呢?
首先,因为人脑可以知道第一位是符号位,在计算的时候我们会根据符号位选择对应真值的加减。
但对于计算机,加减乘数已经是最基础的运算,要设计的尽量简单。计算机辨别“符号位”显然会让计算机的基础电路设计变得十分复杂!于是人们想出了将符号位也参与运算的方法。
我们知道,根据运算法则减去一个正数等于加上一个负数。1-1=1+(-1)所以机器可以只有加法而没有减法,这样计算机运算的设计就会更加简单了。
于是人们开始探索,将符号位也参与运算,并只保留加法的方法。
使用原码计算1-1=0:
1-1=1+(-1)=[00000001]原+[10000001]原=[10000010]原=-2
使用原码并让符号位也参与运算后,减法就会出现错误。
为了解决原码做减法的问题,出现了反码:
1-1=1+(-1)
=[00000001]原+[1000001]原
=1反+11111110反=[11111111]反
=[10000000]原
=-0
发现使用反码计算减法时,结果的真值部分是正确的。唯一的问题出现在的0这个特殊数值上,虽然人们理解+0和-0都是一样的,但是0带符号是没有意义的。而且会有[00000000]和[10000000]两个原码表示0
于是补码的出现,完美解决了0符号问题,以及两个编码的问题:
1-1=1+(-1)
=[00000001]原+[10000001]原
=[00000001]反+[11111110]反
=[00000001]补+[11111111]补
=[00000000]补=[0000000]原-正数的原码、反码、补码是一样的
这样,0用[00000000]表示,以前出现的-0问题就不存在了,而且可以用
[10000000]表示-128(这里注意:因为实际上是使用以前的-0补码来表示-128所以-128并没有原码和反码表示。对于从-128的补码[10000000]算出的原码是[00000000]-是不正确的!)

运算符优先级


()>一元运算符>sizeof>!>算术运算符>关系运算符>&&>||>赋值运算符>|

 表达式

符号与操作数的组合

if结构

先判断后执行

if(true){
	//代码块1
}
else{
	//代码块2
}


多重if结构

if(条件1){
	//代码块1
}
else if(条件2){
	//代码块2
}
else if(条件3){
	//代码块3
}
else{
	//代码块4
}

switch

#include 
using namespace std;
int main()
{
    char input;
    cin >> input;
	switch (input)
	{
	case 'a': case 'A':
	case 'e': case 'E':
	case 'i': case 'I':
	case 'o': case 'O':
	case 'u': case 'U':
		cout << input << "是元音字母" << endl;
		break;
	default:
		cout << input << "不是元音字母" << endl;
		break;
	}
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/934554.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号