[c语言]数据类型的分类-创新互联

在深入了解数据在内存中的存储之前,我们首先得做一些前期的准备工作,即了解关于c语言中类型的分类,再在这部分前置知识的基础上了解整型数据和浮点型数据分别是怎么样在内存中存储的。这篇文章主要介绍了数据类型在内存中的分类,重点介绍整型和浮点型。

成都创新互联是一家集网站建设,新乡企业网站建设,新乡品牌网站建设,网站定制,新乡网站建设报价,网络营销,网络优化,新乡网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
类型的分类

在c语言中,我们将数据类型分为整型,浮点型,构造类型,指针类型和空类型。一方面,不同的类型意味着使用这个类型时开辟的内存空间的大小不同,而内存空间的大小决定了使用范围;另一方面,不同的类型也决定了我们看待内存空间的视角不同。

整型

整型家族里的成员有char,short,int,long,long long等,它们中的每个又可以分为有符号和无符号两种,具体分类见下:

    • char
  • C标准未规定char是按signed char处理还是按unsigned char处理,这取决于编译器,但大多数编译器规定为signed char。

  • 为什么将char归在整型里?

在内存中,char是以ASCII码的形式存储的,而ASCII码本质上也是一个个整型数字,所以可以认为char也是一种整型数据。

分类

范围

输出格式

大小

unsigned char

0~255

%c

1字节

signed char

-128~127

    • short
  • short 也可以写成short int,但int通常省略不写

  • C标准规定short按signed short处理。

分类

范围

输出格式

大小

unsigned short

0~65535

%hu

2字节

signed short

-32768 ~ 32767

%hd

    • int
  • C标准规定int 按signed int处理。

分类

范围

输出格式

大小

unsigned int

0~4294967295

%u

4字节

signed int

-2147483648 ~ 2147483647

%d

    • long
  • C标准规定long 按signed long处理。

  • long 也可以写成long int,但int通常省略不写

分类

范围

输出格式

大小

unsigned long

0~(2^32)-1

%lu

4字节

signed long

-2^31 ~ (2^31)-1

%ld

    • long long
  • C标准规定long long按signed longlong处理。

  • long long也可以写成long long int,但int通常省略不写

分类

范围

输出格式

大小

unsigned long long

0~(2^64)-1

%llu

8字节

signed long long

-2^63 ~ (2^63)-1

%lld

浮点型

浮点型数据用来表示具有小数点的实数。浮点型家族里的成员有float和double两兄弟。它们同样可以分为有符号和无符号两种,具体分类见下:

分类

大小

输出格式

默认保留位数

float

unsigned float

4字节

%f

6

signed float

double

unsigned double

8字节

%lf

signed double

构造类型和指针类型

由于本文的介绍重点为数据在内存中的存储的前置知识,因此对构造类型和指针类型不做着重描述。

构造类型

构造类型分为数组类型,结构体类型 struct,枚举类型 enum和联合类型 union,这里简单介绍一下数组类型,其他不做展开介绍。

    • 数组类型
  • 格式: 类型 数组名[数组元素个数]

  • 类型表示数组所存储元素的数据类型,例如int,char等。

  • 起数组名的时候最好起一些有含义的名称,便于他人理解和日后更改等

  • 数组中若指定元素数目,那么[]中只能是整型数据或者是整数表达式,例如[10]、[5+5],一般来说,C语言数组[ ]里不可以放变量,因为他们是使用C99之前的标准(C99标准中规定可以数组[ ]里可以放变量).

  • 为什么数组类型是构造类型?

给定一个数组 int arr[10];它的类型为int[10]而不是int,因此数组类型是构造类型而不是基本数据类型。

指针类型

指针类型有int *,char *,float* ,void* 等。

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网站栏目:[c语言]数据类型的分类-创新互联
网页URL:http://cdiso.cn/article/dchohc.html

其他资讯