你真的了解C语言中的整型吗?

本文详细探讨了C语言中的整型数据类型,包括整型数据类型的大小、数值范围、无符号整型以及char类型。通过sizeof关键词展示了不同整型变量的字节数,并介绍了如何确保在不同平台上整数的范围统一。文章还解释了二进制表示中的补码机制,以及为什么char被称为字符型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

整型数据类型

1. 整型数据类型

  在上一节当中,我们遇到了整型(integer)int,用来表示一个整数的数据类型。

  下面呢我们来讨论一下C语言里面的整数数据类型。

类型名称 C语言中的关键词 注释
字符型 char 用于表示一个很小的整数
短整型 short 用于表示一个不怎么大的整数
整型 int 生活中一般的整数都可以表示
长整型 long 较大的整数
加长整型 long long 非常大的整数

  看到这里你可能想问,一个整数而已,为什么会需要定义这么多的类型出来呢?

  要知道在发明C语言的年代,计算机资源是非常珍贵的。对内存资源,就是恨不得把一块钱掰成两半用的那种感觉。能用小一点的来内存来存储,就不用大的。当然,现在大部分的强类型语言,都延续了这个传统。即使现在内存资源以及丰富了,程序员可以在编写代码时,可以预想到可能的数据大小。为什么不让程序员自行决定,用什么类型呢?

  接下来,你可能想知道这些类型中,具体的大小限制是多少。很遗憾,我不能100%准确的告诉大家。因为C语言标准并未规定这些数据类型的大小范围,具体的实现交由了编译器和平台决定。那我们怎样知道在visual studio 2019中,各种整型变量的大小呢?我们需要sizeof关键词来帮我们测量。

2. 关键词及sizeof关键词

  和int一样,sizeof是C语言中的一个关键词。

  关键词是被编译器识别的,具有特殊意义的单词。在C语言标准中,关键词如下表所示。它们在C语言当中,都有具体的语法意义。例如int,代表一个整型数据类型,return代表函数结束并带回返回值。

auto _Bool* break case
char _Complex* const continue
default restrict* do double
else enum extern float
for goto if _Imaginary*
inline* int long register
return short signed sizeof
static struct switch
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值