c++ | uint8_t、uint16_t、unint32_t 和size_t

头文件

c++ 复制代码
#include <stdint.h>  // for C
#include <cstdint>   // for C++

uint8_t、uint16_t、unint32_t

这三个分别是表示无符号整型,不同点是他们的长度不同,分别是8位机器位、16、32,也就是一个字节、两个字节、四个字节

注意在任何系统,它们的长度都是固定的

在处理二进制数据 是一个很好的选择 如网络通信上(讲的有点泛)

通常用于需要确切控制大小的场景,例如位操作、字节处理等。

而size_t 本质虽然也是无符号整型,但是其长度是会变的。

在处理索引类型是一个很好的选择

通常用于表示内存块的大小、数组的长度、容器的大小等

数据的保存,粗略的描述,就是要用一个"容器来装它",站在不同的角度,维度也是不一样的。比如数据类型为二进制就可以从int、char角度去选择。如果数据为int、char就要选择 vector、数组、字符串等等。前者涉及网络数据处理偏多,还有加密处理等等,后者涉及数据的计算、筛选等等。现就粗略这样理解吧

相关推荐
liulilittle5 分钟前
C++ 浮点数封装。
linux·服务器·开发语言·前端·网络·数据库·c++
ZouZou老师17 分钟前
C++设计模式之组合模式:以家具生产为例
c++·设计模式·组合模式
yong158585534321 分钟前
2. Linux C++ muduo 库学习——原子变量操作头文件
linux·c++·学习
失散1341 分钟前
Python——1 概述
开发语言·python
萧鼎44 分钟前
Python 图像哈希库 imagehash——从原理到实践
开发语言·python·哈希算法
小小8程序员1 小时前
STL 库(C++ Standard Template Library)全面介绍
java·开发语言·c++
立志成为大牛的小牛1 小时前
数据结构——五十六、排序的基本概念(王道408)
开发语言·数据结构·程序人生·算法
老王熬夜敲代码1 小时前
C++中的atomic
开发语言·c++·笔记·面试
a努力。2 小时前
腾讯Java面试被问:String、StringBuffer、StringBuilder区别
java·开发语言·后端·面试·职场和发展·架构
长安第一美人2 小时前
php出现zend_mm_heap corrupted 或者Segment fault
开发语言·嵌入式硬件·php·zmq·工业应用开发