C语言中的数据类型

字节Byte

字节是内存划分的基本单位

内存划分的最小单位是:位  bit

换算关系:

1 Byte = 8 bit

1 KB = 1024 Byte

1MB = 1024 KB

1GB = 1024 MB

1 TB = 1024 GB

有符号数据类型:

(内置类型)(基本数据类型)
整型: 分为有符号与无符号
      short(2个字节) int(4) long(4) long long(8)

 1字节表示区间:-128~127(-2^7 ~ 2^7-1)共256个
 2字节表示区间:-32768~32767(-2^15 ~ 2^15-1)
 2字节表示区间:+-21开头的10位数据(-2^31 ~ 2^31-1)
 2字节表示区间:(-2^63 ~ 2^63-1)
 eg.电话号码的存储 11位 用long long 类型存储
 两个非常大的数字:字符串表示

 变量的定义:1.int num = 10;//32位的空间存放10的二进制
                       2.int num;//变量的声明,在内存中占32字节
                          num = 10; //变量的定义
           
 无符号数据类型:unsigned int count
 int count = -1;等同于signed int count = -1
 都代表有符号 即有符号位 首位不计算 做标记位
 unsigned int count 不存在符号位 只有数值位
 即不存在负数

字符型: char(1)用英文单引号括起 本质是存的编号
char是0~127的特殊整型
 eg.char c = 'a';//等于char c = 97;
    char c = 'A';
    char c = '0';//字符0 不是整型的数值0

浮点型:float(4)低精度 double(8)高精度

注:

类型转换
int num = 10;//4字节
int res = num;//4字节  value:10
这种是不需要转换的

char c = num;//char是1字节的
但如果所存数字在4字节后面的1字节内,系统自动帮我们转换,叫隐式转换
强制转换:
 char c = (char)num;//()是强制转换符号 将num强制转换为char类型
 (char)是显式转换
 大数据转换到小数据类型 必须强制转换

 高精度转换为低精度也必须强制转换
 有精度转换为无精度也必须强制转换(float到int)

 小数据赋值到大数据则不用强制转换 空余位置直接补充符号位

                                       
布尔型:bool(1) ture/false 1,2…… ture 0 false

ASCII字符集(128个字符 用8位二进制数的组合表示)0~127 在其基础上再加入新字符(>255)成为 Unicode字符集
中文:GBK(GB2312)英文:ASCII ISO ……

 ps:图片来自c程序设计第五版 谭浩强

 特殊ASCII值:字符0: 48
                        字符A:65
                        字符a:97

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值