黑马程序员(一)-------数据类型、常量、变量

------- IOS培训、android培训、期待与您交流! ----------


一、 数据

1. 数据的分类

1> 静态数据

概念:静态数据是指一些永久性的数据,一般存储在硬盘中。硬盘的存储空间一般都比较大,现在普通计算机的硬盘都有500G左右,因此硬盘中可以存放一些比较大的文件。

存储的时长:计算机关闭之后再开启,这些数据依旧还在,只要你不主动删掉或者硬盘没坏,这些数据永远都在。

哪些是静态数据:静态数据一般是以文件的形式存储在硬盘上,比如文档、照片、视频等。

2> 动态数据(临时数据)

概念:动态数据指在程序运行过程中,动态产生的临时数据,一般存储在内存中。内存的存储空间一般都比较小,现在普通计算机的内存只有4G左右,因此要谨慎使用内存,不要占用太多的内存空间。

存储的时长:计算机关闭之后,这些临时数据就会被清除。

哪些是动态数据:当运行某个程序(软件)时,整个程序就会被加载到内存中,在程序运行过程中,会产生各种各样的临时数据,这些临时数据都是存储在内存中的。当程序停止运行或者计算机被强制关闭时,这个程序产生的所有临时数据都会被清除。

2. 数据的大小

不管是静态还是动态数据,都是01组成的

数据都有大小,静态数据就会占用硬盘的空间,动态数据就占用内存的空间

数据越大,包含的01就越多,比特位和字节

1 KB = 1024 B,1 MB = 1024 KB,1 GB = 1024 MB,1 TB = 1024 GB

3.C语言中的数据类型

1>基本数据类型:int,float double char.
2>指针类型:void *
3>构造类型:strtuct,union,enum
4>空类型:void


二、 常量

1. 什么是常量

表示一些固定的数据

2. 常量的分类

1> 整型常量(int):包括了所有的整数,比如0,30,-29等

2> 浮点型常量(float\double)

浮点型常量分为doublefloat两种数据类型

u double:双精度浮点型,其实就是小数。比如5.43-2.30.0(注意,0.0也算是个小数

u float:单精度浮点型,也是小数,比double的精确程度低,也就是说所能表示的小数位数比较少。为了跟double区分开来,float 型数据都是以f结尾的,比如5.43f-2.3f0.0f

绝对不能有10f这样格式的,编译器会直接报错,只有小数才允许加上f

3> 字符常量(char)

u 将一个数字(0~9)、英文字母(a~zA~Z)或者 其他符号(+-!?等)用单引号括起来,这样构成的就是字符常量。比如'6''a''F''+''$'等。

4> 字符串常量

u 将一个或者多个字符用双引号("")括起来,这样构成的就是字符串常量。比如"6""""哇哈哈""abcd""my_car4",其实printf("Hello World");语句中的"Hello World"就是字符串常量。

单引号只能括住1个字符,而且不能是中文字符,下面的写法是错误的:'abc''123456'''


三、 变量

1. 什么是变量

当一个数据的值需要经常改变或者不确定时,就应该用变量来表示。比如游戏积分。

 

2. 定义变量

1> 目的

u 任何变量在使用之前,必须先进行定义。

u 定义变量的目的是:在内存中分配一块存储空间给变量,方便以后存储数据。

u 如果定义了多个变量,就会为这多个变量分别分配不同的存储空间。

2> 格式

变量类型  变量名;

比如int num;

变量名属于标识符

不同类型的变量占用不同大小的存储空间。内存极其有限,分配适当的存储空间 

约束变量所存放的数据类型(方便运算)

3> 实例

int main()

 {

     int i;

char c;

int a, b;

     return 0;    

 }


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);

l 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> 变量之间值的传递

l 可以将一个变量的值赋值给另一个变量

int a = 10;

int b = a;

l 连续赋值

a = b = 10;  


4. 常见错误

1> 变量名相同  int a = 10;  int a = 12;

2> 变量的作用域不对

变量的创建和释放过程:定义变量时被创建,代码块结束时释放。

代码块作用域 {  int a = 10; }



今天学习了数据类型、常量、变量,以前总是搞不清楚这三者之间的区别与联系,通过今天的学习变得条理很清楚,如果你也感兴趣,就来黑马IOS论坛http://bbs.itheima.com/forum-184-1.html大家一起讨论吧大笑













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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值