【共读Primer】22.<4.2> 算术运算符 Page124

运算符 功能 用法
     
+ 正号 + expr
- 负号 - expr
     
* 乘法 expr * expr
/ 除法 expr / expr
% 求余 expr % expr
     
+ 加法 expr + expr
- 减法 expr - expr

运算符的优先级 正号和负号优先级最好,然后是乘法、除法、求余、最后是加和减

int i = 1024;
int k = -i; // k是-1024
bool b = true;
bool b2 = -b; // b2是true
// bool类型不应该参与运算,因为在计算中,bool需要被放大为int类型
// 而bool的含义,只要不为0即为true
// 所以-b的计算后结果为-1,它不为零,依然为true

算数表达式有可能产生未定义的结果,原因有二:

一、数学性质本身的限制,例如除零

二、计算机特性, 数据溢出(当数值达到该类型无法表示的时候)

以下代码表示了一个溢出的结果

#include <iostream>

using std::cout;
using std::endl;

int main()
{
    short val = 32767;
    val += 1;
    cout << "short type val :" << val << endl;
    
    
}

猜你喜欢

转载自www.cnblogs.com/ChattyKu/p/9478192.html
今日推荐