数据类型

目录

数据类型

1.数据类型

2.C语言的数据类型

​编辑3.编程

4.常量和变量

5. 整型

  (1)常量形式:

  (2)进制(进位的制度):

(3)整型变量:

(4)变量名:

(5)整型的大小

(6)整型数据的存储(小端存储)

(7)整型类型的取值范围

(8)重点

7.变量给值

8.浮点型

(1)浮点型常量形式:

(2)浮点型变量及大小

(3)浮点型的存储

(4)重点

9.字符型                 

(1)字符型常量:

(2)字符型变量及大小、取值范围

(3)应用

10.转义字符



数据类型

1.数据类型

就是数据的种类的划分

2.C语言的数据类型

基本数据类型,构造数据类型,指针数据类型,空类型如图:

3.编程

就是把人类的问题描述给计算机,再让计算机解决

4.常量和变量

常量——在程序运行过程中,不能改变的量

变量——在程序运行过程中,能被改变的量

5. 整型

  (1)常量形式:

                345   //十进制整型常量

                  0345 //八进制整型常量

                  0x345 //十六进制整型常量

  (2)进制(进位的制度):

          逢几进1(满几进1)

         十进制—>二进制

        方法:除2取余法(辗转相除法)

        例:2|258

                 2|129  ——0    (最低位)

                    2|64  ——1

                      2|32 ——0

                        2|16 ——0

                         2|8 ——0

                           2|4 ——0

                            2|2 ——0

                             2|1 ——0

                                0 ——1    (最高位)

            258 二进制为100000010

           十进制—>八进制 

            方法:除8取余                        

            十进制—>十六进制

            方法:除16取余

            二进制—>八进制(1位八进制对应3位二进制)二进制—>十进制  二进制—>十六进 制 (1位   十六进制对应4位二进制)

   方法:加权求和      

(3)整型变量:

语法 定义变量 :数据类型 变量名;

整型类型:

八种    unsigned/signed(无符号和有符号)  —— int

                                                                   ——short

                                                                   ——long      

                                                                   ——long long

一般默认为有符号signed

(4)变量名:

是一个名字——标识符

标识符注意事项:

     1)由数字、字母、下划线组成;

     2)开头不能是数字;

     3)不能与关键字重名;

     4)不要和预处理命令及库函数重名;

       int a       //表示要开出一块空间

(5)整型的大小

         int  4字节

         short  2字节

         long   8字节

         long long   8字节

(6)整型数据的存储(小端存储)

大小端:

小端:高高低低

           高位数据存在高地址(地址编号大)处

           低位数据存在低地址处

整数补码(同余模)规则:正数—原码、反码、补码都是一样的

                                           负数-—反码加1

负数的反码是原码符号位不变,其余位按位取反

无符号时——表示所有的二进制位都是数值位

有符号时——表示有一位(最高位)充当了符号位,其余为数值位

(7)整型类型的取值范围

int  unsigned int 0~2^32-1 

      signed int  -2^31~2^31-1

short  unsigned short 0~2^16-1//65535

          signed short -32768 ~ 32767

long

long long

(8)重点

整型的溢出

整型的存储和使用是分开的       

例:  unsigned short a = 65535;   //1111 1111 1111 1111 
         unsigned short b = -65535;  //1 0000 0000 0000 0001
         

6.数据类型的大小(表示的是该数据类型 所占内存空间的字节数 )

sizeof(运算数) 计算运算数所代表的数据类型占用的内存空间的字节数

运算数:可以是一个类型名;

               可以数变量名;

               可以是常量或表达式;

7.变量给值

int a = b; //定义的同时给值 —初始化

int a ; a=10 ; //赋值

变量之所以能变是因为变量实际上对应的是一块能被修改的空间。

8.浮点型

(1)浮点型常量形式:

  1.23  1.23e-4   //科学计数法形式1.23*10^-4

   1.23E-4

(2)浮点型变量及大小

 float 单精度  4字节 

double 双精度 —精度更高  8字节

long double   16字节

(3)浮点型的存储

IEEE 754 标准

float 4字节 32个位

1位 符号位 | 8位充当指数位(需要+127偏移量) | 23位尾数位

double 8字节 64个位

1位符号位 | 11位指数位(需要+1023偏移量)| 52位尾数位

 12.125存储到计算机步骤:

1 )首先将十进制形成的小数写成二进制的小数

    整数部分:除2取余法

    小数部分:乘2取整法

    12 —— 1100

     0.125*2=0.25——0;

     0.25*2=0.5    ——0;

     0.5*2=1         ——1;

     001

     二进制形式1100.001

2)将二进制形成的小数写成科学计数法形式

  1100.001 => 1.100001*2^3 (指数范围在-127~128)

3)按照IEEE 754 标准存放

0 | 3+127 | 100001

0 |10000010 | 100001

0100 0001 0100 0010 0000 0000 0000 000 //存到计算机中的样子

(4)重点

浮点的比较:保证精度一致;类型一致 。

代码中出现的变量或常量一定有其对应的数据类型。

代码中出现的浮点常量的默认识别为double类型 。

常量也可以指定类型:

0.1f——表示被识别为float类型

123——默认识别为int型

123L——表示被识别为long类型

123LU——表示被识别为unsigned long类型

123LL——表示被识别为long long类型                           

123LLU——表示被识别为unsigned long long类型

9.字符型                 

(1)字符型常量:

'a'   //字符常量a 这个常量 

(2)字符型变量及大小、取值范围

char ch ; 1个字节

char ch = 'a';  //ch这个变量最终放的实际上数'a'对应的ascii值(整型)

char   //tiny int —小整型 char也是一种整型类型(char和整型之间是通用的)

范围:

unsigned char ch ; //0~255

signed char a ; //-128~127

(3)应用

ASCII :0~32 为控制字符(不可见字符)

              48~57为数字字符'0'~'9'

              65~90为英文的26个大写字母的符号

              97~122为英文的26个小写字母符号

大写字母转小写 +32

10.转义字符

\n 换行字符   'a' 铃声字符;

\t 跳到下一个制表符(Tab—8个字符宽度);

\b 退一格,后面数据将前面一格的数据顶掉,当数据是‘\n’换行时直接换到下一行不顶掉前面数据;

\r 将当前位置的后面的数据移到最前面,并且覆盖掉前面的数据;;

\f 将当前位置后面的数据移到下一行的这个位置,并且当作开头;

\\   代表一个反斜杠字符;

\' 代表一个单引号字符;

\" 代表一个双引号字符;

\ddd 1到3位八进制所代表的字符;

\xdd 1到2位十六进制所代表的字符;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值