新闻详情

新闻详情

首页 / 资讯中心 / 详情

C++ 第 3 课:运算符、赋值、++ / --、= 和 ==

发布时间:2026/10/2 10:47:00来源:尧图网络
C++ 第 3 课:运算符、赋值、++ / --、= 和 ==
这一课很重要因为以后学if while PID 机器人状态判断都会直接用到。今天重点只学 - * / -- -1. 先复习你已经见过int a 5;这里的你现在应该理解成把右边的值存到左边。例如a 10;相当于原来 a ┌─────┐ │ 5 │ └─────┘ 执行 a 10; 变成 a ┌─────┐ │ 10 │ └─────┘所以叫做赋值运算符“赋值”这个词你可以理解成给变量一个值。2.和完全不一样这是 C 初学者非常容易写错的地方。看a 5;意思是把5存进a。但是a 5意思是判断a是否等于5。这里才是“是否相等”。举个例子假设int a 5;那么a 5答案是true因为a确实等于5。但a 10答案是false因为5 ≠ 103. 为什么判断结果是true / false因为我们上一课学过bool表示真假。所以a 5其实会产生一个bool结果。例如int a 5; bool result (a 5);那么result true画出来a 5 a 5 ↓ true ↓ result4. 这和机器人有什么关系例如机械臂有一个状态变量int state 1;假设规定0 停止 1 运行 2 故障以后你就可能写state 2意思是判断机器人现在是不是故障状态。注意不是state 2;这个是在直接修改状态。这两个差别非常大。5. 再看基本运算符你已经知道 - * /例如int a 10; int b 2;那么a b是12a - b是8a * b是20a / b是56. 新东西看int a 5; a;这里意思是给变量加 1。所以执行a;以后a 6它基本等价于a a 1;为什么a a 1不矛盾数学里看起来很奇怪a a 1如果按照数学“等于”这不可能成立。但是别忘了在 C 中是赋值。所以a a 1;执行过程是假设a 5先算右边a 1 5 1 6然后a 6;把6放回a。于是a5 → 67.--和相反int a 5; a--;结果a 4它等价于a a - 1;所以 加 1 -- 减 18. 机器人里很常见比如你做机械臂测试int count 0;机械臂完成一次动作count;第一次count 1第二次count 2第三次count 3以后写循环for (...)时你会非常频繁看到i;所以一定要熟。9.看int a 5; a 3;意思是a a 3;因此a 8所以a 3;读成给a再加 3。10.-同理int a 10; a - 4;等价于a a - 4;结果a 611. 机械臂角度例子假设现在关节角度double angle 30.0;我想让它增加 5°angle 5.0;结果angle 35.0再执行angle 5.0;结果angle 40.0如果想减小 10°angle - 10.0;结果angle 30.0这种写法在控制程序里非常常见。12. 看一个完整例子#include iostream int main() { int count 0; count; count; count 3; std::cout count std::endl; return 0; }我们一步一步执行。开始count 0第一次count;变成count 1第二次count;变成count 2然后count 3;也就是count 2 3所以count 5最终输出513. 再看#include iostream int main() { int state 2; bool error (state 2); std::cout error std::endl; return 0; }这一行bool error (state 2);先计算state 2因为state 2所以2 2结果true于是error true14. 一个非常危险的错误以后你会写if (state 2)意思是如果state等于 2。但初学者经常误写成if (state 2)这不是判断。这是把 2 存进state。所以以后你看到要想到赋值看到要想到判断是否相等这个区别必须形成条件反射。这一课的小练习第 1 题int a 5; a; a;最后a ?第 2 题int b 10; b - 3;最后b ?第 3 题int x 4; bool result (x 4);result是A. true B. false第 4 题下面两个分别是什么意思a 5;a 5
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

Trae:AI原生IDE的配置逻辑与工程语义实践 2026/10/2 17:20:23

Trae:AI原生IDE的配置逻辑与工程语义实践

1. 什么是 Trae?它不是另一个“AI 插件”,而是一次 IDE 范式的重写Trae 不是 VS Code 上装个 Copilot 插件、也不是 JetBrains 里加个 AI Assistant 就能对标的东西。我第一次在内部测试环境里打开 Trae,敲下def hello()的瞬间就意识到&#…

阅读更多 →
用apk-reverse破OLLVM混淆:Stalker指令级追踪与它的2种失败模式 2026/10/2 17:20:23

用apk-reverse破OLLVM混淆:Stalker指令级追踪与它的2种失败模式

用apk-reverse破OLLVM混淆:Stalker指令级追踪与它的2种失败模式 【免费下载链接】apk-reverse Suitable for Android APK reverse engineering analysis 项目地址: https://gitcode.com/gh_mirrors/ap/apk-reverse apk-reverse 是一个面向 Android APK 逆向工…

阅读更多 →
高睿菲儿每一次出场都有效,白文兰成新晋意难平 2026/10/2 17:20:22

高睿菲儿每一次出场都有效,白文兰成新晋意难平

有些演员靠一部戏被记住,高睿菲儿靠的是每一次出场都让人无法忽视。正在热播的《我不是大师》中,她饰演的白文兰与张晓谦饰演的周文心在地牢相遇的那场戏,被不少观众截图反复品味,甚至被称为“全剧最不敢二刷的片段”。戏份不算多…

阅读更多 →
吃透性能测试计划:从业务分析到压测执行的完整指南 2026/10/2 17:20:21

吃透性能测试计划:从业务分析到压测执行的完整指南

博主做性能测试也有七八年了,经手过大大小小几十个项目,从电商大促到金融系统重构都有涉及。每次接手新项目,我基本不会急着去录制脚本、堆并发,而是先花一到两天时间把性能测试计划彻底想清楚。这篇文章就把我这些年沉淀下来的性…

阅读更多 →
wenyi文译开发者指南:从Provider适配器到操作路由,接入你的专属LLM 2026/10/2 17:20:20

wenyi文译开发者指南:从Provider适配器到操作路由,接入你的专属LLM

wenyi文译开发者指南:从Provider适配器到操作路由,接入你的专属LLM 【免费下载链接】wenyi 将被语言阻隔的作品,带到读者的语言中。Bringing literature into your language. 项目地址: https://gitcode.com/gh_mirrors/we/wenyi weny…

阅读更多 →
Chrome浏览器取证利器Hindsight:解析历史记录、时间戳与隐藏痕迹 2026/10/2 17:20:14

Chrome浏览器取证利器Hindsight:解析历史记录、时间戳与隐藏痕迹

hindsight这个词,英文直译是“事后之见”,中文语境里对应的说法,多少带点“马后炮”的味道。但在数字取证圈,Hindsight还有另一个身份:一款专门针对Google Chrome浏览器历史数据做取证分析的开源工具。它的思路和词义其…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉