【C++ 基础】 第 5 章:语句
2021/10/22 14:09:39
本文主要是介绍【C++ 基础】 第 5 章:语句,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
语句
- 1. 语句基础
- 1.1 语句的常见类别
- 1.1.1 表达式语句:表达式后加分号,对表达式求值后丢弃,可能产生副作用
- 1.1.2 空语句:仅包含一个分号的语句,可能与循环一起工作
- 1.1.3 复合语句(语句体):由大括号组成,无需在结尾加分号,形成独立的域(语句域)
- 1.2 顺序语句与非顺序语句
- 1.2.1 顺序语句
- 1.2.2 非顺序语句
- 1.2.2.1 最基本的非顺序语句: goto
- 1.2.2.2 goto 本质上对应了汇编语言中的跳转指令
- 2. 分支语句
- 2.1 分支语句—— if
- 2.1.1 语法: https://zh.cppreference.com/w/cpp/language/if
- 2.1.2 使用语句块表示复杂的分支逻辑
- 2.1.3 从 if 到 if-else
- 2.1.4 if V.S. constexpr if—— 运行期与编译期分支
- 2.1.5 带初始化语句的 if
- 2.2 分支语句—— switch
- 2.2.1 语法: https://zh.cppreference.com/w/cpp/language/switch
- 2.2.2 条件部分应当能够隐式转换为整形或枚举类型,可以包含初始化的语句
- 2.2.3 case/default 标签
- 2.2.4 [[fallthrough]] 属性
- 2.2.5 与 if 相比的优劣
- 3. 循环语句
- 3.1 循环语句——while
- 3.1.1 语法: https://zh.cppreference.com/w/cpp/language/while
- 3.1.2 处理逻辑
- 3.1.3 注意:在 while 的条件部分不包含额外的初始化内容
- 3.2 循环语句——do-while
- 3.2.1 语法: https://zh.cppreference.com/w/cpp/language/do
- 3.2.2 处理逻辑
- 3.2 循环语句——for
- 3.2.1 语法: https://zh.cppreference.com/w/cpp/language/for
- 3.2.2 处理逻辑
- 3.2.3 在初始化语句中声明多个名字
- 3.2.4 初始化语句、条件、迭代表达式可以为空
- 3.2.5 for 的更多示例
- 3.3 循环语句——基于范围的 for 循环
- 3.3.1 语法: https://zh.cppreference.com/w/cpp/language/range-for
- 3.3.2 本质:语法糖,编译器会转换为 for 循环的调用方式
- 3.3.3 转换形式的衍化: C++11 / C++17 / C++20
- 3.3.4 使用常量左值引用读元素;使用 万能引用( universal reference )”修改元素
- 3.4 循环语句——break / continue
- 3.4.1 含义(转自 cpp reference )
- 3.4.2 注意这二者均不能用于多重嵌套循环,多重嵌套循环的跳转可考虑 goto 语句
- 4. 语句的综合应用——达夫设备
- 4.1 使用循环展开提升系统性能
- 4.2 处理无法整除的情形
- 4.2.1 额外增加一个循环语句
- 4.2.2 将 switch —— 与循环结合 达夫设备
1. 语句基础
1.1 语句的常见类别
1.1.1 表达式语句:表达式后加分号,对表达式求值后丢弃,可能产生副作用
1.1.2 空语句:仅包含一个分号的语句,可能与循环一起工作
1.1.3 复合语句(语句体):由大括号组成,无需在结尾加分号,形成独立的域(语句域)
1.2 顺序语句与非顺序语句
1.2.1 顺序语句
1.2.2 非顺序语句
1.2.2.1 最基本的非顺序语句: goto
1.2.2.2 goto 本质上对应了汇编语言中的跳转指令
2. 分支语句
2.1 分支语句—— if
2.1.1 语法: https://zh.cppreference.com/w/cpp/language/if
2.1.2 使用语句块表示复杂的分支逻辑
2.1.3 从 if 到 if-else
2.1.4 if V.S. constexpr if—— 运行期与编译期分支
2.1.5 带初始化语句的 if
2.2 分支语句—— switch
2.2.1 语法: https://zh.cppreference.com/w/cpp/language/switch
2.2.2 条件部分应当能够隐式转换为整形或枚举类型,可以包含初始化的语句
2.2.3 case/default 标签
2.2.4 [[fallthrough]] 属性
2.2.5 与 if 相比的优劣
3. 循环语句
3.1 循环语句——while
3.1.1 语法: https://zh.cppreference.com/w/cpp/language/while
3.1.2 处理逻辑
3.1.3 注意:在 while 的条件部分不包含额外的初始化内容
3.2 循环语句——do-while
3.2.1 语法: https://zh.cppreference.com/w/cpp/language/do
3.2.2 处理逻辑
3.2 循环语句——for
3.2.1 语法: https://zh.cppreference.com/w/cpp/language/for
3.2.2 处理逻辑
3.2.3 在初始化语句中声明多个名字
3.2.4 初始化语句、条件、迭代表达式可以为空
3.2.5 for 的更多示例
3.3 循环语句——基于范围的 for 循环
3.3.1 语法: https://zh.cppreference.com/w/cpp/language/range-for
3.3.2 本质:语法糖,编译器会转换为 for 循环的调用方式
3.3.3 转换形式的衍化: C++11 / C++17 / C++20
3.3.4 使用常量左值引用读元素;使用 万能引用( universal reference )”修改元素
3.4 循环语句——break / continue
3.4.1 含义(转自 cpp reference )
3.4.2 注意这二者均不能用于多重嵌套循环,多重嵌套循环的跳转可考虑 goto 语句
4. 语句的综合应用——达夫设备
4.1 使用循环展开提升系统性能
4.2 处理无法整除的情形
4.2.1 额外增加一个循环语句
4.2.2 将 switch —— 与循环结合 达夫设备
这篇关于【C++ 基础】 第 5 章:语句的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享
- 2024-11-23oss直传有什么好处?-icode9专业技术文章分享
- 2024-11-23如何将oss直传封装成一个组件在其他页面调用时都可以使用?-icode9专业技术文章分享
- 2024-11-23怎么使用laravel 11在代码里获取路由列表?-icode9专业技术文章分享
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享