1.C语言特点****
1,#include<stdio.h> 头文件包含,一定有
2,每一个c语言的程序有且只有一个main函数,这是整个程序的开始位置;
3,C语言中(),[],{}.””,’’,都必须成对出现,必须是英文符号;区分大小写;
4,语句要以分号;结束。
5,//为注释
2.关键字****
数据类型相关的关键字(12个)
short、int、long、char、float、double、struct、union、enum、signed、unsigned、void
用于定义变量或者类型
格式:类型 变量名
变量名称属于标识符(函数名,重命名和别名),命名规则:只能以数字,字母,下划线命名;首字母不能是数字。不能是关键字。
| char | 字符型 | 1个字节 char ch=’1234’错误。这是字符串。1个字节=8位默认是auto,signed(有符号)修饰; | 有符号:-2的7次方 ~ 2的7次方 -1;无符号:0~2的8次方-1 |
|---|---|---|---|
| short | 短整型 | 2个字节 | 有符合:-2的15次方 — 2的15次方 -1;无符号:0~2的16-1 |
| int | 整型 | 在32位系统下占4个字节,16平台下占2个字节 | 有符合:-2的31次方 ~ 2的31次方 -1;无符号:0~2的32-1 |
| Long | 长整型 | 在32位系统下占4个字节,在64位系统下占8个字节 | |
| Float | 单浮点型 (实数) | 占4个字节默认保留小数点后6位,并且可以四舍五入。 | |
| double | 双浮点型(实数) | 占8个字节 | |
| signed | 有符号(正负)的意思 | Signed int a=10;可以保存正数,也可以保存负数;默认情况下signed可以省略。 | |
| unsigned | 无符号类型的数据 | 只能保存正数和0 | |
| Enum | |||
| union | |||
| struct | |||
| void |
sizeof()参数可以是变量名,也可以是参数名。可以获取数据类型所占内存的大小
存储相关关键字(5个):register、static、const、auto、extem
| register | 寄存器 | 修饰的变量是寄存器变量,尽量将其存储空间分配在寄存器中。 | 1,定义的变量不一定真的存放在寄存器中。2,cpu取数据的时候去寄存器中拿数据要比去内存中拿数据快3,因为寄存器比较宝贵,所以不能定义寄存器数组。4,register只能修饰字符型及整型的,不能修饰浮点型。5,因为register修饰的变量可能存放在寄存器中不存放在内存中,所以不能对寄存器变量取地址。因为只有存放在内存中的数据才有地址。 |
|---|---|---|---|
| static | 静态 | 可以修饰全局变量、局部变量、函数、 | static修饰的变量保存在内存的静态区间中。 |
| const | 常量 | 修饰的变量是只读的,不能修改它的值。 | 也可以修饰指针。 |
| auto | |||
| extern | 外部 | 一般用于函数和全局变量的声明。 |
控制语句相关的关键字:
if、else、break、continue、for、while、do、switch 、 case 、 goto、default
条件控制语句:
if语句:if else
switch语句:switch case default
循环控制语句:
For while do goto
其他关键字:
sizeof、typedef、volatile
| sizeof | 使用来测量变量、数组的占用存储空间的大小(字节数) | |
|---|---|---|
| typedef | 自定义数据类型。把已有的类型,重新定义一个新的名字并没有创造一个新的类型 | 例:把short int 变成INT16typedef short int INT16; |
| volatile | 易改变的,告诉cpu每次用volatile变量的时候,要重新去内存中取,保证用的是最新的值,而不是寄存器中的备份。 |