【扣得细】c语言的数据类型

本文详细介绍了常见的几种数据类型及其内存占用情况,包括int、short、long等,并通过具体实例解析了数值类型的存储范围及补码表示方法。此外还介绍了如何指定输出数据的格式。

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

目录

1.常见的几种数据类型

2. 通过以下代码可以知道它们所占的内存大小​编辑

3.储存范围

4.数据输出


1.常见的几种数据类型

2. 通过以下代码可以知道它们所占的内存大小

int   4 字节

short 2 字节

long 4 字节  实际上也可以是8字节 (大多数编译系统为4字节)

long long 8字节

char 1字节

float 4 字节

double 8字节

3.储存范围

 现在以 char为例。我们都知道计算机系统中,数值用二进制补码储存。而char为1字节8比特位,其中第一位是符号位,其余7位用来表示数值,那么2^7=128,它的范围为什么要-1?相信这是部分初学者的一大困惑,现在就来探究一下

 通过原码、反码、补码的转换我们就可以了解其中真相,在unsigned char中8个比特位都用来表示数值,从00000000~11111111也就是0~255

有这么一道题

-8要储存就要转为补码,-8的原码为10001000,反码为11110111,补码11111000,所以它的内存数据形式为11111000。这时候题是做完了,但不妨碍我们继续思考,我们要是把-8用%d打印出来会是什么样?是-8、8还是其他数字。事实上结果为248,从上文我们可以知道其储存形式为11111000,而unsigned char没有符号位,全用来表示数值,11111000的十进制就是248。

4.数据输出

 在初学中,我们看见%5d,%7.2f这些表达,有点不理解,其实这是在格式声明中指定输出数据的域宽。像%7.2f表示指定数据占7列,小数占2列,直白来讲,就是要求输出的数据用7个数字表示,其中2个用来表示小数。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值