C语言复习(一) 数据基本类型

1.C 语言包含的数据类型
这里写图片描述
2.C语言基本数据类型分别在16位,32位,64位下不同
这里写图片描述
这里写图片描述
3.内存是按字节编址的==1Byte
1Byte = 8 bit
1KB = 1024 Byte
1M = 1024 KB
1G = 1024 M

4.基本数据类型取值范围

不同数据类型的范围和通常和编译平台有关系。例如16位平台上的int是2个字节,32位平台上的int是4个字节。目前的主流编译环境都是32位,在32位平台下各种数据类型取值范围如下:

名称     定义所用关键字   字节数 范围
整型     [signed]int      4  -2147483648~+2147483648
无符号整型  unsigned[int]     4  0~4294967295
短整型    short [int]       2  -32768~32768
无符号短整型 unsigned short[int]  2   0~65535
长整型     Long int       32  -2147483648~+2147483648
无符号长整型 unsigned [int]    32  0~4294967295
字符型    [signed] char     1  -128~+127
无符号字符型 unsigned char     1  0~255
单精度    float         4  3.4 x 10^(-38)~ 3.4 x 10^(+38)
双精度    double        8  1.7 x 10^(-308)~ 1.7 x 10^(+308)

6.float和double 的区别
这里写图片描述

7.C语言基本类型声明、初始化、大小及格式说明符总结
这里写图片描述
注意:0.格式说明符中是o(大写为O)不是零,是l(大写为L)不是1。
1.大小为标准的32位机器中的情况,不同机器的int和long大小可能会有差异。
2.还有一些新增的类型如_Bool、_Complex、_Imaginary此次并未列出。
3.尽管同一种类型可以有这么多种表示方式,但请尽量选择表达最清楚的方式。
4.无符号类型尽量少用,因为C蛋疼的隐式类型转换会让你大吃一斤(比如:if(50u>-50))!!!
5.注意每种类型的取值范围(溢出问题)及表示精度(什么很大的数和很小的数相运算就是精度这个问题啰),就是根据数据占有的位个数来计算啦,整数要考虑符号位,浮点数要考虑浮点编码(单精度1,8,23,双精度1,11,52)。
6.考虑到代码移植性的话,会用到inttypes.h和stdint.h的东西(什么int32_t,long64_t就是这里边的东西啦)。
7.不管什么联合类型、枚举类型、用户自定义的结构体类型或是带了函数(过程)的抽象数据类型,甚至是所谓高端的面向对象的类,都是由这些基础数据类型(元类型)构建的,所以嘛基础一定要稳哟!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值