C语言03_常量与变量

1



1> 常量(constant)

1.1> 常量表示

9303192.168110, 'I', "Love"

 用数据直接表示;
//--------------------------//

1.2> 常量类型

?思考:

9303:
从外貌看,是整型,
是intshort,long哪个?

110:
是二进制呢,还是十进制呢?
//--------------------------//

"编译器会根据常量默认分配类型"
> 进制:默认为 十进制;  

> 空间大小:
   浮点默认为 double;
   
   整型默认,从intunsigned intlongunsigned long,
              依次分配;
//--------------------------//

? 9300 让他默认为long型:
> 加后缀
9300L  //就是long类型的常量;
//--------------------------//
?改变进制:
> 加前缀:
0x110//0x,代表16机制;
0110//0,代表8进制
//--------------------------//

^_^类比: verilog中数值表示

8'b1111_1101 
//8位二进制 1111 1100;
 
8'hff     
//8位16进制,ff
//--------------------------//

1.3> 常量含义

? 199,237,204 有什么含义?
可以是下图的颜色值,
也可以是某某特殊日子,
还可以是money

类似的 0 :代表关;
       1:代表关;
       
总结:常量的含义由human决定的;
//--------------------------//

在这里插入图片描述


1.4> 常量定义


> 宏定义
#define 0 ON 
#define 1 OFF

> 枚举
enum ball { 
 basketball,
 Ping-pong,
 football };
/* 0-basketball, 
 * 1-Ping-pong,
 * 2-football,
 */
//--------------------------//

2> 变量(variable)

2.1> 内存空间读写

"存放程序运行过程中可能变化的数据"
//--------------------------//
int room;  // 声明变量a
room = 3+2//--------------------------//

?思考:如何存放,需要什么?
step 1> 分配4字节内存空间,
step 2>5('b0101)写进去;
//--------------------------//

room


? 画出运行过程:

int room_A;
int room_B;

room_A = 8;
room_B = room_A;
//--------------------------//

room_A 空间存放的是11111111
room_B 空间存放的是100000000

'变量,就是内存中的空间'
'对他进行读写操作'
//--------------------------//

在这里插入图片描述

2.2> 变量属性

作用域:
      1> 全局变量
	  2> 局部变量
//--------------------------//
链接属性,
存储方式,内存映射
//--------------------------//
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 游动-白 设计师:上身试试 返回首页