C语言整型知识

本文介绍了C语言中的整型类型,包括有符号和无符号整型,如signed char、unsigned int等,并强调了类型间的取值范围和转换注意事项。还提到了不同编译器和平台下整型占用字节数的差异,以及如何使用sizeof和limits.h来查询类型信息。
摘要由CSDN通过智能技术生成

初入C语言,有理解错误或不正确请多指教、纠正!

C语言整型int是英文integer的缩写,int分为有符号(signed)和无符号(unsigned)整型。

C语言整型有如下:

一、有符号

  • 1、signed char 可简化为 char
  • 2、signed short int 可简化为 short
  • 3、signed int 可简化为 int
  • 4、signed long int 可简化为 long
  • 5、signed long long int 可简化为 long long

二、无符号

  1. unsigned char
  2. unsigned short int 可简化为 unsigned short
  3. unsigned int
  4. unsigned long int 可简化为 unsigned long
  5. unsigned long long int 可简化为 unsigned long long

虽然完整写法比较麻烦,不过意义明确。

三、注意点

  1. 上面类型越往下的类型取值范围越大,不能把大的数值往小的类型装,会导致数据不正确
  2. 类型所占用的字节数不同的编译器、平台会有差别。如int在16位系统占用2个字节,在32、64位一般占用4个字节。另外long在windows只占用4个字节,在类Unix中long占用8个字节
  3. 一个字节(Byte)有8个二进制位(Bit),即 1Byte=8Bit
  4. 有符号整型二进制的最高位为符号位,0表示正数,1表示负数。因此有符号一个字节只有7个二进制位是数据位(取值范围计算方法:-2^7~2^7-1,为什么是7次方而不是8次方?因为二进制最高位是符号位。为什么正数要减1呢?因为正数范围多了一个0)
  5. 无符号整型所有二进制位全部是数据位(取值范围计算方法:0~2^8-1,为什么正数要减1呢?因为正数范围多了一个0)
  6. 类型具体占用多少字节可用sizeof关键进行查询
  7. 可引入limits.h头文件,打印输出各类型最小取值、最大取值范围(具体看代码段)

四、各类型取值范围(以windows10系统64位为例) 

  •         signed cha
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值