全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

浅谈int8_t int64_t size_t ssize_t的相关问题(详解)

在代码中经常看到int8_t/int16_t/int32_t/int64_t/uint8_t/size_t/ssize_t,以前对这个问题一直是稀里糊涂的,不明白它们到底是什么数据类型,现在上班了,必须把它弄明白了

uint8_t之类

那么_t的意思到底表示什么?具体的官方答案没有找到,不过我觉得有个答案比较接近。它就是一个结构的标注,可以理解为type/typedef的缩写,表示它是通过typedef定义的,而不是其它数据类型。既然它们都不是新的数据类型,只是使用typedef给类型起的别名,那为什么需要定义它们了?因为跨平台,不同的平台会有不同的字长,所以利用预编译和typedef可以让你最有效的维护你的代码。

它们在stdint.h头文件中定义,下面的代码从/usr/include/stdint.h中复制

<span style="font-family:Microsoft YaHei;font-size:14px;">

/* There is some amount of overlap with <sys/types.h> as known by inet code */

#ifndef __int8_t_defined
# define __int8_t_defined
typedef signed char       int8_t;
typedef short int        int16_t;
typedef int           int32_t;
# if __WORDSIZE == 64
typedef long int        int64_t;
# else
__extension__
typedef long long int      int64_t;
# endif
#endif

/* Unsigned. */
typedef unsigned char      uint8_t;
typedef unsigned short int   uint16_t;
#ifndef __uint32_t_defined
typedef unsigned int      uint32_t;
# define __uint32_t_defined
#endif
#if __WORDSIZE == 64
typedef unsigned long int    uint64_t;
#else
__extension__
typedef unsigned long long int uint64_t;
#endif</span>

看完上面的代码,对uint8_t等就有了清晰明确的认识了

size_t/ssize_t

关于size_t/ssize_t,着急的同学可以先看结论
size_t       无符号整型      32bit系统上等同于unsigned int        64bit系统上等同于unsigned long int

ssize_t      有符号整型      32bit系统上等同于int                       64bit系统上等同于long int

32bit系统中 long int为32bit,64bit系统中 long int为64bit

可以从/usr/include/sys/types.h一层层查找,最终会找到ssize_t和size_t的定义。

如何判断系统位数

getconf WORD_BIT

getconf LONG_BIT

或者使用uname -a

以上这篇浅谈int8_t int64_t size_t ssize_t的相关问题(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


# int8_t  # int64_t  # size_t  # ssize_t  # 给大家  # 是一个  # 整型  # 会有  # 让你  # 有个  # 我觉得  # 这个问题  # 把它  # 它是  # 不明白  # 希望能  # 看完  # 这篇  # 它就  # 没有找到  # 浅谈  # 到底是什么  # 最有效  # 小编 


相关文章: 文字头像制作网站推荐软件,醒图能自动配文字吗?  如何在Windows虚拟主机上快速搭建网站?  如何解决VPS建站LNMP环境配置常见问题?  5种Android数据存储方式汇总  建站之星CMS建站配置指南:模板选择与SEO优化技巧  免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?  C#如何使用XPathNavigator高效查询XML  详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)  如何用狗爹虚拟主机快速搭建网站?  建站之星如何助力企业快速打造五合一网站?  开封网站制作公司,网络用语开封是什么意思?  建站VPS能否同时实现高效与安全翻墙?  广州美橙建站如何快速搭建多端合一网站?  上海制作企业网站有哪些,上海有哪些网站可以让企业免费发布招聘信息?  建站VPS配置与SEO优化指南:关键词排名提升策略  建站之星安装后如何自定义网站颜色与字体?  整人网站在线制作软件,整蛊网站退不出去必须要打我是白痴才能出去?  广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  Android自定义listview布局实现上拉加载下拉刷新功能  如何通过虚拟机搭建网站?详细步骤解析  如何在IIS7上新建站点并设置安全权限?  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  如何选择香港主机高效搭建外贸独立站?  广州商城建站系统开发成本与周期如何控制?  建站之星五站合一营销型网站搭建攻略,流量入口全覆盖优化指南  linux top下的 minerd 木马清除方法  Python如何创建带属性的XML节点  c# 在ASP.NET Core中管理和取消后台任务  深圳网站制作费用多少钱,读秀,深圳文献港这样的网站很多只提供网上试读,但有些人只要提供试读的文章就能全篇下载,这个是怎么弄的?  jQuery 常见小例汇总  大型企业网站制作流程,做网站需要注册公司吗?  网站制作和推广的区别,想自己建立一个网站做推广,有什么快捷方法马上做好一个网站?  大连 网站制作,大连天途有线官网?  网站图片在线制作软件,怎么在图片上做链接?  ,制作一个手机app网站要多少钱?  制作网站怎么制作,*游戏网站怎么搭建?  建站之星上传入口如何快速找到?  长沙做网站要多少钱,长沙国安网络怎么样?  建站主机解析:虚拟主机配置与服务器选择指南  如何在万网主机上快速搭建网站?  网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?  深圳网站制作的公司有哪些,dido官方网站?  宝华建站服务条款解析:五站合一功能与SEO优化设置指南  如何快速搭建安全的FTP站点?  PHP正则匹配日期和时间(时间戳转换)的实例代码  建站主机是否属于云主机类型?  网站制作的步骤包括,正确网址格式怎么写?  建站ABC备案流程中有哪些关键注意事项?  h5网站制作工具有哪些,h5页面制作工具有哪些? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。