【带头学C++】----- 1.基础知识[筑基期] ---- 4.14 位运算符的综合应用

目录

4.14 位运算符的综合应用

4.15 三目运算符 ?:

4.16 运算符优先级

4.17 自增自减

1.基础认识++(自增加1)和--(自减少1)符号

2.在一条语句中混用解引用和递增运算符 


    最近做任务,公司项目比较重,赶上1024的活动,内容上略微有一些杂乱,后期会把专栏目录重新搞一下,内容我是融合了很多课程和书籍包含ai的一些理解,我整理和增加了自己的见解和代码贴图,后续有需要代码的可以私聊我。免费赠送(专栏整理完了再发哈)

4.14 位运算符的综合应用

本章主要对上一篇文章作为补充,补充一下关于位运算符的一些综合应用。同时补充一下关于三目运算符、运算符的优先级、以及重要的自增、自减操作。

上图引用千锋教育C++基础班课程笔记 

4.15 三目运算符 ?:

表达式1?值1:值2
如果表达式1为真整个表达式的值为值1

如果表达式1为假 整个表达式的值为值2

例如:

    int age = 20;
    string result = (age >= 18) ? "成年人" : "未成年人";

    cout << "年龄:" << age << endl;
    cout << "身份:" << result << endl;

 其实相当于if-else,经常用于比较简单的比较条件,省去if-else的大块语句

 

注意特殊的:

test08里面我们可以看到data1的值是10,data2是原始是20,最后data2的值发生了改变。

实际上是因为在给 (data1>data2?data1:data2) 赋值时,根据条件 (data1>data2) 的判断结果,如果为真,则将 data1 的值赋给整个表达式,如果为假,则将 data2 的值赋给整个表达式。

在这个例子中,(data1>data2?data1:data2) 的值为 data2,因为 data1 的值并没有大于 data2。所以 data2 的值被赋为了 200

因此,最后的输出结果中,data1 的值保持为原来的 10,而 data2 的值被赋为了 200

4.16 运算符优先级

 1.图标展示运算符号的优先级

图示在C++primer一书中。 

4.17 自增自减

1.基础认识++(自增加1)和--(自减少1)符号

在C++中,递增运算符(++)和递减运算符(--)提供了一种便捷的方式来对对象进行加1和减1操作。

递增运算符有两种形式:前置版本和后置版本。前置递增运算符将运算对象加1,并返回修改后的对象本身作为求值结果。例如,++x 将会将变量 x 的值加1,并返回加1后的值。

后置递增运算符也将运算对象加1,但是返回的是运算对象改变之前的值的副本。例如,x++ 将会将变量 x 的值加1,但返回的是加1之前的值。

递减运算符的工作原理与递增运算符类似,只是将对象减1。

#include <iostream>
using namespace std;

int main() {
    int x = 5;
    int y = 10;

    // 前置递增运算符
    ++x; // x 增加1,现在 x 的值为 6
    cout << "x = " << x << endl;

    // 后置递增运算符
    y++; // y 增加1,但返回的是加1之前的值,现在 y 的值为 11
    cout << "y = " << y << endl;

    // 前置递减运算符
    --x; // x 减少1,现在 x 的值为 5
    cout << "x = " << x << endl;

    // 后置递减运算符
    y--; // y 减少1,但返回的是减少之前的值,现在 y 的值为 10
    cout << "y = " << y << endl;

    return 0;
}

2.在一条语句中混用解引用和递增运算符 

     如果我们想在一条复合表达式中既将变量加1或减1又能使用它原来的值,这时就可以使用递增和递减运算符的后置版本。

这里引用了C++primer5版本里面对改问题解释 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序小白Erike.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值