目录

1.数据类型的分类
2.基本整型 int
3.短整型 short int
4.长整型 long int
5.双长整型 long long int
6.字符型 char
7.布尔型 bool

1.数据类型的分类

2.基本整型 int

int 是英文 integer 的简写,又被称为“基本整型”。它是数据类型的一种(最基本的整数类型),表示整型变量1。它用来表示有符号的整数,即可以是正整数、零或负整数。一般来说 int 占用4个字节(32个比特位)的内存空间。

拓展int 类型的变量取值范围是多少?

因为 int 用来表示有符号的整数,且一般占用4个字节(32个比特位)的内存,所以它的二进制码的左边第一个位(最高位)会用来判断正负,即 “0” 为负或 “1” 为正。那么int类型的变量取值范围应该为 -2,147,483,648 ~ 2,147,483,647(即-231 ~ 231-1)。

3.短整型 short int

short int 常被成为“短整型”。它也是整型变量的一种,相对于int类型的变量,它所占内存一般为2个字节(16个比特位)。

拓展:已经有 int 类型的变量存在,为什么又多出一个 short int 类型的变量?short int 类型的变量取值范围是多少?

①由上面可知,int 一般占用 4 个字节(Byte)的内存,共计 32 位(Bit)。如果不考虑正负数(不考虑最高位用来判断符号的情况,即无符号类型变量),另32个比特位都为 1 时,它取最大值,即 232-1 = 4,294,967,295 ≈ 43亿,这样的数值巨大,实际开发过程中用到的可能性很小。如果涉及小数值运算,使用 int 类型的变量(占4个字节的内存空间),势必会造成资源的浪费。那么,就引入了适合小数值运算的 short int 类型的变量 (占2个字节的内存空间),来节约资源空间。二者的数据类型都是整型。

② 因为 short int 也用来表示有符号的整数,且一般占用2个字节(16个比特位)的内存,所以它的二进制码的左边第一个位(最高位)会用来判断正负,即 “0” 为负或 “1” 为正。那么 short int 类型的变量取值范围应该为 -32,768 ~ 32,767(即-215 ~ 215-1)。

4.长整型 long int

long int 常被称为“长整型”。它也是整型变量的一种,相对于int类型的变量,它所占内存一般为4个字节(32个比特位)。

拓展:为什么long int 类型的变量和 int 类型的变量都为4个字节? long int 类型的变量取值范围是多少?

① 一定要注意,博文中说到的 “一般” 这个字眼,因为在 16 位环境下,short int 的长度为 2 个字节,int 也为 2 个字节,long int 为 4 个字节(16 位环境多用于单片机和低级嵌入式系统)。在 32 位的 Windows、Linux 和 Mac OS,short int的长度为 2 个字节,int 为 4 个字节,long int也为 4 个字节。在 64 位环境下,不同的操作系统会有不同的结果,64位 Windows中 short int 的长度为 2 个字节,int 也为 4 个字节,long int 为 4 个字节,而类Unix系统(包括 Unix、Linux、Mac OS、BSD、Solaris 等) short int 的长度为 2 个字节,int 也为 4 个字节,long int 为 8个字节。所以什么时候需要使用 long int 也要根据不同环境来改变。

②以笔者64位 Windows系统的环境来看,long int 同样也用来表示有符号的整数,且一般占用4个字节(32个比特位)的内存,所以它的二进制码的左边第一个位(最高位)会用来判断正负,即 “0” 为负或 “1” 为正。那么 long int 类型的变量取值范围应该为 -2,147,483,648 ~ 2,147,483,647(即-231 ~ 231-1)。

5.双长整型 long long int

long long int 在C语言中是64位2(int为32位)的“双长整型”数据类型。就笔者目前而言,开发过程中用到 long long 的情况较少。它所占内存一般为8个字节(64个比特位)。

拓展long long int 类型的变量取值范围是多少?
-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807

6.字符型 char

char 严格来说,它也是整型类型的一种,被称为“字符型”(在内存中以ASCII码的形式存储),它用于C或C++中定义,只占一个字节(8个比特位) 。

拓展char 类型的变量的特点?

① C语言中如 intlongshort 等不指定 signed(有符号)或 unsigned(无符号符号)时都默认为 signed(有符号)但 char 在标准中不指定为 signedunsigned,编译器可以编译为带符号的,也可以编译为不带符号的(转自百度百科)。

②声明字符型变量3

③字符常量与初始化。

7.布尔型 bool

bool用来表示“布尔型”变量,即逻辑型变量的定义符。一般可认为是4个字节(32个比特位)。C语言中没有 bool 类型(C++中存在),在此不作赘述。

—————————END————————— 往期回顾

★C语言学习1:从下载编译软件开始!DEV-C++、VC6.0、VS2010、VS2017等编译器的下载(Windows系统)

★C语言学习2:Hello World!详解

★C语言学习3:常量、变量和数据类型

★C语言学习4:Bit、Byte、KB、MB、GB、TB、PB简述及单位换算

★C语言学习5:机器数、真值、原码、反码和补码详解


  1. 整型变量 是一种计算机语言。在C语言中,整型变量的值可以是十进制,八进制,十六进制,但在内存中存储着是二进制数。变量顾名思义是数值可以变的量,整型变量表示的是整数类型的数据(转自百度百科)。 ↩︎

  2. 64位编译系统 int 占四字节,long 占8字节,long 数据范围变为:-263 ~ 263-1(参考博文:int,long和long long的区别) ↩︎

  3. 字符型变量
    ①字符型变量是用来保存单字符的zhi一种变量:如:char a=‘a’; 而字符串就是用来保佑多个字zhuan符的变量,shuC语言中用字符数组来表式一个字符串 如:char name[]={“abcdefghikllllll”}。
    ②字符和字符串的区别在于是用双引号,还是单引号,双引号表字符串,单引号表字符,如:"a"和’a’ 第一个是字符串,而第二个是字符。
    ③字符型量包括字符常量和字符变量。字符串常量是由一对双引号括起的字符序列。字符变量的取值是字符常量,即单个字符。字符变量的类型说明符是char。字符变量类型说明的格式和书写规则都与整型变量相同。(转自百度知道) ↩︎

C语言学习6:数据类型 -> 基本类型 -> 整型类型(int、short int、long int、char等)相关推荐

  1. 我的Go+语言初体验——(6)整型有理数数据类型

    我的Go+语言初体验--(6)整型有理数数据类型 "我的Go+语言初体验" | 征文活动进行中- Go+ 语言使用后缀 'r' 表示有理数,支持整型.分数型.浮点型三种有理数数据类 ...

  2. c语言初学知识点,C语言学习关于数据类型的一些知识点(初学者)

    1.整型常量的的前缀:(1)十进制常数无前缀. (2)八进制常数前缀为0,八进制常数无符号. (3)十六进制常数前缀为0X或0x. 注:在程序中是根据前缀来区分各种进制数的.因此在书写常数时不要把前缀 ...

  3. C语言学习笔记-数据类型

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 C语言数据类型 一.编程规范 1.1代码缩进 1.2变量.常量命名规范 1.3函数的命名规范 1.4注释 二.关键字 2.1 32个关 ...

  4. c语言赋值小数,c语言中将一个浮点型赋值给整型时,会不会四舍五入?

    c语言中将一个浮点型赋值给整型时,不会四舍五入,会直接舍去小数部分的数据,也可以认为是执行了下取整运算. 将浮点数(单双精度)转换为整数时,将舍弃浮点数的小数部分,只保留整数部分.将整型值赋给浮点型变 ...

  5. C | C语言学习(三)输入数据、输出数据、类型转换、数组、char数组和字符串、字符串长度

    一.从标准输入设备读取数据 (# include <stdio.h>) 1. 读取数据(通用):scanf通过%转义的方式可以得到用户通过标准输入设备输入的数据. int num1, nu ...

  6. 【C语言】整型提升 - 关于short短整型和char字符型的运算

    前言 C的整型算术运算总是至少以缺省整型类型,也就是默认整形类型的精度来进行的.为了获得这个精度,表达式中的字符和短整型操作数在使用之前被转换为普通整型,这种转换称为整型提升. 何为整型提升 - 整形 ...

  7. C#语言中提供了枚举和整型之间的强制转换功能(SelectItem)

    [csharp] view plain copy   <span style="font-family: Arial, Helvetica, sans-serif;"> ...

  8. 什么是整型类型?Python整型详细介绍

    整数类型(int)简称整型,它用于表示整数,例如,100.2016等.整型字面值的表示方式有四种,分别是十进制.二进制(以"0B"或"0b"开头).八进制(以数 ...

  9. 深入理解Java的整型类型:如何实现2+2=5?

    先看下这段神奇的Java代码: public static void main(String[] args) throws Exception {doSomethingMagic();System.o ...

最新文章

  1. Django 全文检索6.3
  2. WINDOWS SERVER 2003从入门到精通之配置DHCP服务器(下)
  3. leetcode 目录
  4. java数组最大下标_【Java视频教程】day09-面向对象
  5. Oracle 单实例 迁移到 RAC 实例 -- 使用RMAN 异机恢复
  6. docker pull下载很慢_一文了解Docker容器技术的操作
  7. Android 数字动画
  8. redis的发布和订阅
  9. 字节跳动 录屏功能_非常值得推荐,字节跳动出品的一款协同办公软件。
  10. Linux中用tar命令对文件夹进行打包压缩
  11. 假若明天来临——《AI.未来》读后感3900字
  12. 国家一级职业资格证书 计算机类有哪些
  13. 机器人布里茨说什么_lol蒸汽机器人布里茨辅助玩法介绍 值得一看
  14. cmd命令行配置windows防火墙
  15. Yocto中WIC控制以及WKS文件
  16. 计算机考研复试——数据结构篇
  17. 生成EAN13条码(C语言实现)
  18. 项目0单节点的虚拟机做大数据开发(四万字全)
  19. java array缓存_有java数组
  20. Python爬虫爬取链家网上的房源信息练习

热门文章

  1. MATLAB求解运输问题
  2. win7+VS2008 System.Runtime.InteropServices.COMException
  3. 开山ORC螺杆膨胀发电机
  4. Git的注册登录以及具体使用
  5. 【Paper】毕业论文免费查重网站平台汇总
  6. SQL 数据初级查询—实验报告
  7. 国税局发票查验中英文验证码识别最新版,识别率99.9%
  8. 高德AR 车道级导航技术演进与实践
  9. java分隔符读取文件_java – 在读取文件时使用分隔符
  10. 栈(也被称作堆栈,一种遵循先进后出原则的数据结构)