C语言学习6:数据类型

您所在的位置:网站首页 c语言的整型是什么 C语言学习6:数据类型

C语言学习6:数据类型

2024-01-27 16:43| 来源: 网络整理| 查看: 265

目录

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语言中如 int、long、short 等不指定 signed(有符号)或 unsigned(无符号符号)时都默认为 signed(有符号)但 char 在标准中不指定为 signed 或 unsigned,编译器可以编译为带符号的,也可以编译为不带符号的(转自百度百科)。

②声明字符型变量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:机器数、真值、原码、反码和补码详解

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

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

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



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3