C语言从0到1(02)——变量与数据类型
一、什么是变量?
变量是程序可操作的存储空间的名称。
这句定义对于初学者来说,可能有些抽象,我们来举个现实生活中的例子,酒店开房:
试想一下,你如果在香格里拉开了一间房,那你怎么来描述你住的那间房呢?
豪华单人间,房号8888,住着我和那谁…
那么这间房就是对应的“可操作的存储空间”,房号8888就是对应的“名称”。
二、定义一个变量
程序中的定义变量的过程,就可以类比现实生活中开房的过程:
房间类型 房间名 入住
对应至变量定义即为:
变量(数据)类型 变量名 = 数据;
变量三要素:变量(数据)类型 、变量名 、 数据。
针对以上三要素,我们一一分析
三、数据类型
变量的作用,简单点就是用来存储数据
所以变量的类型,其实是有数据来决定的。
在现实生活中也有很多不同的数据,比如:
年龄——18 —— 整数
身高——172.5 —— 小数
成绩—— A —— 字母
C语言中,数据类型表示如下:
现实中的类型 | 程序中的类型 | C语言类型关键字 |
---|---|---|
整数 | 整型 | short、int、long |
小数 | 浮点型 | float、double |
字母 | 字符型 | char |
以上为基础数据类型
C 语言也有其他数据类型,比如枚举、指针、数组、结构、共用体等等,这将会在后续的章节中进行讲解。
房间类型某种意义上可以认为其空间的大小,同样变量的类型决定了变量存储占用的空间。
四、存储大小和储值范围
之所以存在多个数据类型,是因为数据需要不同的空间大小去存储(如:单人间和双人间),其存储方式也有区别。
内存大小单位有:bit(位)、B(字节)、KB、MB、GB、TB、BP等等。
bit:最小单位,存放一个二进制数据
1 Byte(B)= 8 bit
1 Kilo Byte(KB) = 1024 B
1 Mega Byte(MB) = 1024 KB
1 Giga Byte (GB)= 1024 MB
1 Tera Byte(TB)= 1024 GB
1 Peta Byte(PB) = 1024 TB
类型 | 大小(字节) | 大小(位) | 储值范围 |
---|---|---|---|
char | 1 | 8 | -128(-2^7)~ 127(2^7-1) |
short | 2 | 16 | -32768 ( -2^15 ) ~ 32767 ( 2^15 - 1) |
int | 4 | 32 | -2,147,483,648 ( -2^31 ) ~ 2,147,483,647 ( 2^31 - 1 ) |
long | 8 | 64 | -9,223,372,036,854,775,808( -2^63 ) ~ 9,223,372,036,854,775,807 ( 2^63 -1 ) |
float | 4 | 32 | -/+3.4e38(精确到6位小数) |
double | 8 | 64 | -/+1.7e308(精确到15位小数) |
五、变量命名规则与规范
- 命名规则:
1、变量名由 字母、数字、_(下划线)、$ 组成。
2、变量名不能以数字开头。
3、不能是c语言中的保留字(关键字)比如,int、char、float等。
4、变量名区分大小写。
规则即必须遵守,下面根据变量定义语法和命名规则,定义若干变量:
int a = 10; //定义整型变量
char _c = 'A'; //定义字符型变量,要用单引号,而且单引号里面是一个字符,不能是汉字(汉字占两个字符)
float f1 = 10.0; //定义单精度浮点型,只能精确到小数点后6位
double F = 10.0; //定义双精度浮点型
错误示例:
int a.1 = 10; //只能有字母、数字、_、$符号组成
int 1a = 10; //不能是数字开头
int int = 10; //用了C语音中的保留关键字
char c = '好'; //汉字实际暂用两个字符,char类型不能存储
- 命名规范: 各公司都不尽统一,各有各的规范,这里介绍一种常用规范:
驼峰命名法:是指混合使用大小写字母来构成变量和函数的名字。
如:userName、defaultName、currentThread
六、总结:
变量定义:数据类型 变量名 = 数据;
根据所要存储的数据的类型,判断其数据,使用对应的数据类型定义变量,且变量名符合命名规则。
下一章节讲述常量、输出与输入。
练习:
输入你的姓名,性别,及年龄,身高放入三个不同类型的变量中,要求格式如下
请输入你的身高:
***
请输入你的性别:(M、F表示男、女)
*
请输入你的年龄:
**
身高 性别 年龄
*** * **