当前位置: 首页 > news >正文

【嵌入式C语言】四

5.3数据扩充的应用案例

若不进行强制类型转换,那么temp×1.2会变成doubole类型

5.4数据运算时发生溢出的危害

  • 对于无符号溢出,会把溢出值与256求模
  • 对于有符号溢出,编译器想怎么实现就怎么实现,上面是具体案例

溢出的危害

5.5数据扩充案例

负整数在数据扩充时的规则

负整数在向数值范围大的类型扩充时,扩充位会填1

因此d2扩充后就是0xFFFFFFFF,再或0x00010000不会是想像中的值

5.6 24000000U中的U是做什么用的?

常数10000在51单片机中默认是16位无符号,最大值为65535,当乘10后为100000,超过最大值,数据就会发生溢出,所以最终n获得的数值是溢出以后的数

解决办法:

在10000的后面加上UL,这样编译器就会按照unsigned long进行处理

6.1bool数据类型

bool数据类型的数值只有1和0两种,对应true和false;

  1. 定义bool数据类型最终目的是应用于条件判断语句和循环控制语句中;
  2. bool数据类型是在c99标准引入的,使用需要添加头文件*Include<stdbool.h>
  3. bool数据类型占用的空间是1个字节,并且只使用二进制的第-0位来表示0和1

bool数据类型的数值只有1和0两种,对应true和false

转换规则:任何非0数值转换为bool类型都为1

6.2关系运算符

  

6.3逻辑运算符及短路

6.4if语句的单分支结构

6.5if语句的双分支和多分支结构

6.6三元条件运算符

求最大值最小值时,可以用三元条件运算符使用宏定义进行封装

http://www.dtcms.com/a/332029.html

相关文章:

  • 【PCB设计经验】3D模型在线预览!效率便捷!
  • pycharm远程连接服务器跑实验详细操作
  • ClickHouse 日常运维命令总结
  • 并发编程原理与实战(二十三)StampedLock应用实战与其他锁性能对比分析
  • CentOS7系统负载异常飙高全链路分析详细指南
  • Kaggle赛题分析1:Elo用户忠诚度评分预测(2)-特征工程与模型训练
  • 解决Python环境混乱问题
  • 【159页PPT】智慧方案企业数字化转型流程体系建设与运营方案(附下载方式)
  • 鸿蒙应用开发实战:模块内页面路由与Navigation导航详解
  • 深入理解提示词工程:从入门到精通的AI对话艺术
  • 零基础-动手学深度学习-10.3. 注意力评分函数
  • [vibe coding-lovable]lovable是不是ai界的复制忍者卡卡西?
  • 《零基础入门AI:深度学习中的视觉处理(卷积神经网络(CNN)进阶)》
  • 光猫 SK-D840N 获取管理员密码和登录Telnet简记
  • 如何永久修改开发板的时间(重启开发板也不会失效)
  • 深度学习-卷积神经网络CNN-膨胀卷积、可分离卷积(空间可分离、深度可分离)、分组卷积
  • 从红警中来学习工厂方法 vs. 抽象工厂
  • C# 异步编程:提高应用程序效率的关键
  • A股大盘数据-20250814 分析
  • mysql如何降级
  • IDEA 插件 Trae AI 全攻略
  • 20道前端性能优化面试题精华
  • 数仓分层架构设计全解析:从理论到实践的深度思考
  • 多模态大模型技术框架汇总
  • cursor中的设置C++无法跳转
  • CMake中add_definitions()的使用指南
  • geoserver sql视图调用Postgis自定义函数问题记录
  • 五种IO模型与非阻塞IO
  • 双椒派E2000D网络故障排查指南
  • T05_卷积神经网络