C++学习日记(运算符和表达式)

本文详细介绍了C++中的各类运算符及其用法,包括算术、关系、逻辑、赋值等基本运算符,并深入探讨了条件、逗号、自增自减等特殊运算符的应用场景与注意事项。

计算机执行的是语句而不是算术表达式

1.算术运算符和算术表达式

取负:-单目表达式
*、/、%、+、- 双目表达式
除法运算符/:会丢弃小数部分
求余运算符%:两个操作数只能是整型

优先级:
取负
乘法、除法、求余
加法和减法

2.关系运算符和关系表达式

大于>、大于等于>=、 小于<、 小于等于<=、(优先级较高)
等于== 不等于!=
都是双目运算符,两边操作数的数据类型最好相同(可以是字符)

3.逻辑运算符与逻辑表达式

!非 单目运算符 结合性:从右至左
&&与 双目 都为真则为真
||或 双目 有一个为真则为真

优先级:
非>与>或

短路求值:当计算出一个子表达式的值后既能确定整个逻辑表达式的值时,就不需要计算后面的子表达式了。

4.赋值运算符与赋值表达式

= 赋值运算符
+=、-=、*=、/=、%= 算术复合赋值运算符
<<=、>>=、&=、^=、|= 位复合赋值运算符

赋值运算符的左操作数必须是一个可以修改的变量(非常数)
不能是函数、表达式或是数组名

赋值运算符的结合性是从右至左,在C++中可以连续赋值
a=b=c=d=1;

5.条件运算符与条件表达式

三目运算符 ?:
条件判断表达式?表达式1:表达式2;
条件表达式为非0(true),值为表达式1
如果为0(false),值为表达式2

6.逗号运算符与逗号表达式

逗号表达式的结果是其最右边表达式的值

int a =3,b=4,c;
    c=(a,b,a=a*b,b=a*b,a=a+b);
    cout << "a= "<<a<<","<<"b= "<<b<<","<<"c= "<<c<<endl;
    return 0;

a = 60 b = 48 c = 60

7.自增自减

前置形式:先对操作数进行运算,后使用该操作数。
后置形式:先使用后对该操作数运算

cout << "front: ";
    for (int a = 0; a <= 5;)
    {
        cout << ++a << " ";
    }
    cout << endl;
    cout << "back:  ";
    for (int a = 0; a <= 5;)
    {
        cout << a++ << " ";
    }
    cout << endl;
    system("pause");

8.sizeof运算符

作用:返回对象或者类型名的长度,单位是字节。1字节=8位
sizeof(类型名)
sizeof(对象)
sizeof 对象

9.箭头运算符与点运算符

.运算符的左操作数必须是一个对象
→运算符的左操作数必须是指向对象的指针

10.位运算符

~按位求反
<<左移一位 >>右移一位
&按位与
^按位异或
|按位或

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值