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

typedef uint8_t u8;(stm32数据类型)

在stm32单片机的库文件里有这么一段u8和u16的定义

typedef uint8_t  u8;

typedef uint16_t u16;


而uint8_t和uint16_t的定义是这样的

typedef unsigned          char uint8_t;
typedef unsigned short     int uint16_t;

意味着u8就是就是指代的unsigned char

意味着u16就是就是指代的unsigned short int

C语言之数据类型详解_c语言数据类型_supergirl091的博客-CSDN博客

为什么这么定义?

u8-----可以理解为无符号的8位2进制的数据,就是11111111-00000000,注意这里全部是正数,没有负数,第一位并不是符号位,u就是unsigned char的首字母,8就是8个位的意思。

u16同理

这种写法能很容易的表明有几个位,8位?16位?而最常见的数据类型就是无符号,所以u8的使用频率非常高,每次都老老实实的写unsigned char有点太烦人了,于是用u8来替代,简明易懂。

在单片机和操作系统中 typedef 会经常用到,它可以为某一个类型自定义名称。和#define比较类似。但是又有不同的地方。

typedef 创建的符号只能用于数据类型,不能用于值。而#define 创建的符号可以用于值。
typedef 是由编译器来解释,而不是预处理器。
typedef 使用起来更加灵活。

typedef的4种常见用法:

一、给已定义的变量类型起个别名

二、定义函数指针类型

三、定义数组指针类型

四、定义数组类型

总结一句话:“加不加typedef,类型是一样的“,这句话可以这样理解:
没加typedef之前如果是个数组,那么加typedef之后就是数组类型;
没加typedef之前如果是个函数指针,那么加typedef之后就是函数指针类型;
没加typedef之前如果是个指针数组,那么加typedef之后就是指针数组类型;
typedef的4种常见用法_暴躁的野生猿的博客-CSDN博客


http://www.kler.cn/a/2766.html

相关文章:

  • 1111111111待修改--大流量分析(三)-BUUCTF
  • ubuntu20.04 解决Pytorch默认安装CPU版本的问题
  • Elasticsearch 实战应用:高效搜索与数据分析
  • 蔚来Java面试题及参考答案
  • 【数据结构与算法】第11课—数据结构之选择排序和交换排序
  • HelloMeme 上手即用教程
  • springboot+mybatis plus+vue+elementui+axios 表格分页查询demo
  • # 机械设备故障的靶向迁移诊断与OpenAI分析
  • 把星巴克吓出冷汗,6580家门店扭亏为盈
  • (五)大数据实战——使用模板虚拟机实现hadoop集群虚拟机克隆及网络相关配置
  • 代码误写到master分支(或其他分支),此时代码还未提交,如何转移到新建分支?
  • 【机器学习】综述:机器学习中的模型评价、模型选择与算法选择
  • 微信小程序可以进行dom操作吗?
  • 蓝桥杯Web前端练习-----渐变色背景生成器
  • 读《Multi-level Wavelet-CNN for Image Restoration》
  • 冲击蓝桥杯-时间问题(必考)
  • 【Linux】安装DHCP服务器
  • 国产芯片方案——红外测温体温计方案
  • Linux内核Socket通信原理和实例讲解
  • mysql数据库安装及使用
  • ThreadPool线程池源码解析
  • 【数据结构与算法】- 算法时间复杂度详解
  • 现代数据栈MDS应用落地介绍—Vero营销自动化平台
  • Linux 信号(signal):信号的捕捉流程
  • Mysql用户权限分配详解
  • 【Python_requests学习笔记(七)】基于requests模块 实现动态加载数据的爬取