C语言基本数据类型

 C语言基本数据类型如下:

1.整型:

整型数据:在c语言中整型常量有三种表示形式分别是八进制、十进制和十六进制;

十进制整数,如132,23,-321;

八进制整数,以0开头的是八进制数。

十六进制,以0x开头的数是是十六进制数。

2.变量和常量:

  (常量 )在程序运行过程中,其值不能被改变的量称为常量;

  (变量) 在程序运行过程中,其值能被改变的量称为变量;

3.进制转换:

  n进制: 满n进1 --- 进位制度 ;

 十进制 => n进制  方法:除n取余法 ;

n进制  => 十进制   方法:加权求和 ;

 二进制 <=>八进制   方法:    一位八进制数 对应 三位二进制数 ;

二进制 <=>十六进制  方法:  一位十六进制数 对应 四位二进制数 ;

4.整型变量的定义:

语法:
     数据类型 变量名;

 整型:
      int    //整型                4个字节
      long   //长整型           8个字节
      short  //短整型           2个字节
      long long                   8个字节

变量名又称标识符:

标识 符的定义规则:

1.数字,字母,下划线组成 ,不能是数字开头 

 2字母区分大小写 

 3.不能与关键字重名 

 4.不建议和 二级关键字重名(include define)

赋值和初始化的区别:

  int a = 10;//初始化 

  int a; 
  a = 10; //赋值 

5.整型数据存储:

   字节顺序 ---字节序
   int a = 0x12345678;
   0x12 高位的数据 
   0x78 低位的数据 
  

 大端存储 :反过来的
 小端存储 :高高低低    (高位数据放在高地址处) 
   
 注意:
     电脑一般都是小端存储 
     51单片机 大端存储 
     arm 芯片 可以选择,默认是小端 

存储方式:

整数在计算机中都是以补码的形式存储

正数
       原码 反码 补码 是相同的 
 负数
       原码
       反码            //原码 符号位不变,其余位按位取反
       补码            //反码+ 1    

某个负数的补码再求一次补码可以得到原码  

数据类型所能表示的数据范围:

int  / unsigned int : 0  ~  2^32-1

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

short / unsigned short :0 ~ 2^16-1 (65535)

signed short : -2^15 ~ 2^15-1   [-32768~ 32767]

注意:
   整型数据 可能会溢出
   最大值+1 变成 最小值 向上溢出 
   最小值-1 变成 最大值 向下溢出 

6.浮点型 

作用:用于处理小数;

  float           4字节
  double        8字节 
  long double 16字节

浮点数的存储:

step1: 将十进制形式的小数,转换为二进制形式的小数 ;

      整数部分 ---除2取余法
     小数部分 ---乘2取整法 

step2: 将二进制形式的小数,写成科学计数法形式 

step3: 按照IEEE754给定标准存储 

 float  4个字节 单精度

 32个位
   符号位|     指数位  | 尾数位
     1位             8位        23位 

 double  8个字节    双精度

   64位
   符号位 | 指数位  | 尾数位
    1位        11位       52位 
                 1023
  指数位涉及一个偏移量:指数+127;因为指数可负可正,

偏移量:2^(n-1)-1      其中n表示指数位数

例如:12.25

(1)   1100 . 01
      0.25 * 2 = 0.5 ... 0
      0.5  * 2 = 1.0 ... 1

(2)1100 . 01 => 1.10001 * 2 ^ 3

(3)0      3+127    10001

0100 0001 0100 0100 0000 0000 0000 0000  //计算机中最终存储形式
     4     1   4    4    0     0   0    0

注意:
1. 不论是变量,还是常量,都有其对应的数据类型 

2.变量在生存期(如果是局部变量,生存期为定义开始到作用域结束,全局变量,生存期为定义开

始到程序结束)内只能初始化一次,可以赋值无数次;

 3. 浮点类型 比较问题 

 比较两个浮点类型的数据,必须保正精度是一致

 4. 常量后面,可以添加 f 这种的表示将常量 识别为float类型 

小数常量默认识别为 double类型 

 小数常量后面加l 识别为long double 

例如:

  0.9     //默认识别为double 
  0.9f     //识别为float 
  0.9l     //识别为long double 

7.字符类型:

字符常量:
     'a'     //字符常量 

字符变量:
    char      //表示字符类型 ,占1个字节

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

48~57 '0'~'9

65~90  'A'~'Z'

 97~122 'a'~'z'

转义字符:
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值