size_t和int区别

size_t和int区别size_t和intsize_t是一些C/C++标准在stddef.h中定义的。这个类型足以用来表示对象的大小。size_t的真实类型与操作系统有关。在32位架构中被普遍定义为:typedefunsignedintsize_t;而在64位架构中被定义为:typedefunsignedlongsize_t;size_t在32位架构上…

大家好,又见面了,我是你们的朋友全栈君。

size_t和int
      size_t是一些C/C++标准在stddef.h中定义的。这个类型足以用来表示对象的大小。size_t的真实类型与操作系统有关。

在32位架构中被普遍定义为:

typedef unsigned int size_t;

而在64位架构中被定义为:

typedef  unsigned long size_t;
        size_t在32位架构上是4字节,在64位架构上是8字节,在不同架构上进行编译时需要注意这个问题。而int在不同架构下都是4字节,与size_t不同;且int为带符号数,size_t为无符号数。

为什么有时候不用int,而是用size_type或者size_t:

       与int固定四个字节不同有所不同,size_t的取值range是目标平台下最大可能的数组尺寸,一些平台下size_t的范围小于int的正数范围,又或者大于unsigned int. 使用Int既有可能浪费,又有可能范围不够大。
 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/134892.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月6日 上午7:46
下一篇 2022年6月6日 上午7:46


相关推荐

  • springboot websocket 跨域_前端websocket框架

    springboot websocket 跨域_前端websocket框架WebSocket是HTML5开始提供的⼀种在单个TCP连接上进⾏全双⼯通讯的协议,可以实现跨域访问。websocket安装命令npmiws-S服务器端:letWebServerSocket=require(“ws”).Server;letwss=newWebServerSocket({port:8200});constmysql=require(“…

    2022年10月1日
    4
  • 60mph和kmh换算_mph换算器(速度计算器在线)「建议收藏」

    60mph和kmh换算_mph换算器(速度计算器在线)「建议收藏」mph是英里每时的意思吗?如何换算成千米每时?100mph=160.9kmhmph是英里每时的意思吗?如何换算成千米每时?mph是米/小时的意思mitersperhour也可写成m/hAkm/h=A*1000m/h玩极品飞车12,上面的速度是mph,怎么换算啊1英里=5280英尺=63360英寸=1609.344米汽车速度表上,英制的MPH与公制的km/…

    2022年6月28日
    86
  • percona mysql 安装_Percona 5.7安装

    percona mysql 安装_Percona 5.7安装一 从官网下载 Percona5 7 二 解压 tarxvfPercon Server 5 7 16 10 ra0c7d0d el6 x86 64 bundle tar 能够看到解压出 7 个文件三 安装 rpm ivhPercona Server server 57 5 7 16 10 1 el6 x86 64 rpmPercona Server client 57 5 7 16 10 1 el6

    2026年3月17日
    3
  • Java实习入职华为,半年后我跑路了

    Java实习入职华为,半年后我跑路了0前言全是干货的技术殿堂文章收录在我的GitHub仓库,欢迎Star/fork:Java-Interview-Tutorialhttps://github.com/Wasabi1234/Java-Interview-Tutorial1何来?我,一个双非本科渣渣,有幸在19届的秋招中得到前东家华为(以下简称hw)的赏识,当时秋招签订就业协议,当时18年10月签订三方后Hr通知说是入了某java部门,之后一系列组织架构调整原因等等让人无法理解的骚操作,最终在毕业前夕的五

    2022年5月15日
    53
  • jenkins demo //TODO「建议收藏」

    jenkins demo //TODO「建议收藏」mkdir-p/var/jenkins_mountchmod777/var/jenkins_mountdockerrun-d-p9091:8080-p9092:50000-v/var/jenkins_mount:/var/jenkins_mount-v/etc/localtime:/etc/localtime-v/usr/share/apache-maven/apache-maven-3.8.1:/usr/local/maven–namejenkinsjenk

    2022年6月2日
    35
  • c语言double类型printf问题

    c语言double类型printf问题背景 今天在用 c 语言写程序时遇到了一个问题 printf lf double r 竟然输出乱码 0 000000 浏览了几十个网页之后 大致找到了问题原因 结论 在 c 语言中 double 类型的读入必须用 lf 输出必须用 f 解释 double 和 float 的精度是不同的 故存储空间也是不同的 所以如果要读入 double 类型 必须要用 lf 来读入 以免精度丢失 而输出 由于

    2026年3月20日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号