当前位置: 首页 > 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.lryc.cn/news/621416.html

相关文章:

  • 20道前端性能优化面试题精华
  • python学习DAY41打卡
  • 低配硬件运行智谱GLM-4.5V视觉语言模型推理服务的方法
  • 《WebGL中FBO的底层运行逻辑》
  • 基于ECharts和EdgeOne打造云上智能图表
  • 编排之神-Kubernetes中的微服务介绍及演练
  • (2-10-1)MyBatis的基础与基本使用
  • 大数据项目_基于Python+hadopp的城市空气污染数据关联性可视化分析系统源码_基于机器学习的城市空气污染预测与分析系统的设计与实现
  • C/C++ 进阶:深入解析 GCC:从源码到可执行程序的魔法四步曲
  • 卫星通信链路预算之七:上行载噪比计算
  • 【C#】PNG 和 JPG、JPEG的应用以及三种格式的区别?
  • [系统架构设计师]软件工程基础知识(五)
  • 《量子雷达》第5章 量子雷达发射机 预习2025.8.14
  • “Zen 5”: The AMD High-Performance 4nm x86-64 Microprocessor Core
  • 接口测试用例的编写
  • Avalonia_SukiUI明暗主题切换时部分元素颜色不变
  • vue内置组件
  • 基于wireshark的USB 全速硬件抓包工具USB Sniffer Lite的使用
  • 打靶日常-CSRF
  • pytorch学习笔记-加载现有的网络模型(VGG16)、增加/修改其中的网络层(修改为10分类)
  • 分布式锁—Redisson的公平锁
  • 如何更好地使用AI编程?
  • MySQL窗口函数与PyMySQL以及SQL注入
  • C#笔记啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊
  • JavaScript 解构赋值语法详解
  • 开源卫星软件平台LibreCube技术深度解析
  • DAY 42 Grad-CAM与Hook函数
  • 一文讲透Go语言并发模型
  • PHP现代化全栈开发:实时应用与WebSockets实践
  • PIDGenRc函数中lpstrRpc的由来和InitializePidVariables函数的关系