------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------------
******************** 变 量 ********************
1 什么是变量
当一个数据的值需要经常改变或者不确定时,就应该用变量来表示。
2 定义变量
1> 目的
任何变量在使用之前,必须先进行定义。
定义变量的目的是:在内存中分配一块存储空间给变量,方便以后存储数据。
如果定义了多个变量,就会为这多个变量分别分配不同的存储空间。
2> 格式
变量类型 变量名;
比如int num;
变量名属于标识符
变量类型
不同类型的变量占用不同大小的存储空间。内存极其有限,分配适当的存储空间
约束变量所存放的数据类型
例如 int i;
char c;
int a, b;
3 变量的使用
1> 赋值
往变量里面存点东西,就是赋值。赋值语句后带个分号;
i = 10;
注意:这里的等号=,并不是数学中的“相等”,而是C语言中的赋值运算符,作用是将右边的常量10赋值给左边的变量i
第一次赋值,可以称为“初始化”
初始化的两种形式
先定义,后初始化:int a; a = 10;
定义的同时进行初始化:int a = 10;
2> 修改
可以修改变量的值,多次赋值。每次赋值都会覆盖原来的值
i = 10;
i = 20;
变量i最后的值是20
使用printf输出一个\多个变量的值
int a = 10, c = 11;
printf("a=%d, c=%d", a, c);
double\float\char的输出,格式符的一些小技巧
double height = 1.55;
char blood = 'A';
printf("height=%.2f, 血型是%c", height, blood);
简单的加减操作
int a = 10 + 20;
没有初始化时不要拿来使用(下面的写法是不建议的)
int score;
printf("score=%d", score);
3> 变量之间值的传递
可以将一个变量的值赋值给另一个变量
int a = 10;
int b = a;
连续赋值
a = b = 10;
4 常见的错误
1> 变量名相同 int a = 10; int a = 12;
2> 变量的作用域不对
变量的创建和释放过程
代码块作用域 { int a = 10; }
5 变量的内存分析
1 不同类型占用的字节是不一样的,数据越大,所需的字节数就越多
2 变量的存储
char 1字节
int 4字节
float 4字节
double 8字节
变量实例
int b = 10;
int a = 20;
内存由大到小寻址,优先分配内存地址较大的字节给变量。b的内存地址比a大
每个变量都有地址:第一个字节的地址就是变量的地址
查看内存地址:
int a;
printf("a的地址是:%p\n", &a);
注意
在变量未经初始化之前,不要尝试使用变量的值
int a;
printf("a的值是:%d\n", a);
上面的写法是不建议的