一、数据类型
1.关键字
关键字就是C语言提供的有特殊意义的符号,C语言中有32个。
auto double intstruct break else long switch
case enum register typedef char extem return union
const float short for signed void if unsigned
default goto sizeof volatile do continue while static
2.标识符
标识符就是在程序中自定义的一些符号和名称,由字母、数字、下划线和美元符号组成
特点:不能以数字开头;不能和关键字重名;严格区分大小写;起名要有意义;便于识别(驼峰命名)。
3.静态数据和动态数据
静态数据:数据被保存后,只要设备没有被损坏,不管通电没通电,数据都是存在的。
动态数据:数据加载到内存中,一断电,数据就不在了。
4.MB和Mb
一般数据机及网络通讯的传输速率都是以[bps]为单位。大写B代表Byte,小写b代表bit。比如4Mbps及10Mbps等等。1M宽带,1Mbps等如1*1024/8,即128KB/s。
5.C语言数据类型
基本类型:int float double char
构造类型:数组、结构体struct、共用体union、枚举类型enum
指针类型
空类型:void
6.为什么要分数据类型
便于识别;合理分配内存
7.单精度和双精度浮点型精确度
单精度float,精确度为有效数字7位。
双精度double,精确度为有效数字15位。
8.变量
特点:创建一个变量相当于在内存中占用了一块空间
这个空间的大小是固定的,但里面的数据可以改变
初始化创建,在函数作用域执行完成后失效,且内存空间释放
作用域:
变量的作用域在对应的代码块中,可以理解为距离变量最近的两个成对的花括号。
同一个作用域内不能有相同的变量名,在不同作用域下变量名可以相同
作用域可以无限嵌套
9.在不同编译器下,各种数据类型变量或常量所占的内存存储空间(记住1448)
16位编译器32位编译器64位编译器
char 1 1 1
int 2 4 4
float 4 4 4
double 8 8 8
10.变量在内存中的分配
变量类型占几个字节,则变量就占几个字节
变量是从当前剩余内存区域的最高位开始寻址(内存遵循从大到小分配的原则)
变量的地址是其所占的第一个字节的地址(地址遵循从小到大分配)
11.scanf:使用时不要在格式控制字符串中添加\n,直接回车就可以表示结束自动换行。
12.Sizeof用法
Sizeof是用来计算常量、变量、数据类型在内存中所占用的字节数。
如果是数据类型,需要添加括号
如果是常量或变量,括号可加可不加
13.Sizeof后面直接跟字符,会自动变成ASCII码对应的字节数
14.算数运算
%取余运算,参加取余运算的两个数必须是整数,在printf函数中使用时,为了避免编译器把%当成格式控制符,要写两个%。
15.%取余数的应用
如何让一个数无论怎么增加都不会超过某个值。
答案:让这个数取余你需要的值。
16.精度转换
用强制类型转换解决高精度向低精度转换产生的警告。
当参与运算的两个数的精度不同时,会自动进行精度转换,从低精度向高精度转换
17.自增自减连续写,编译的时候会产生警告,警告的原因是编译器认为这不是连续的运算,开发的时候不要这样写 |
|