c语言基本语法
1表示符
用来标识变量,函数,或者其他用户自定义项目名称
2关键字
break ,case , char ,if ,return等等
auto 自动所有的变量在数据类型前面都有个auto break ase char const 修饰常属性变量 continue default do double else enum extern 声明外部符号 float for goto int long register 寄存器 return short signed 有符号的 unsigned 无符号的 sizeof
3 static
修饰局部变量 时局部变量出了作用域不会被销毁。改变了变量的存储位置
修饰全局变量 时这个全局变量的外部连接属性就变成了内部链接属性
其他源文件就不能使用了.
修饰函数 时这个函数的外部连接属性就变成了内部链接属性
其他源文件就不能使用了.
c语言中的空格,称之为空白行,c编译器会完全互留它
4c数据类型
基本数据类型
char 1字节 int 2字节/4字节 shout 2字节 long 4字节 float 4字节 double 8字节 long double16字节
枚举类型
用来定义在程序中只能赋予其一定的离散数值的变量
void
表明该数据类型没有返回值
派生类型
包括数组类型,指针类型和结构类型
类型转换
隐式类型转换
较小的数据类型转化为较大的数据类型;例如:int转为long/float转为double。隐式类型转换可能会导致数据精度丢失或截断
实例:int i =10;
float f = 4.1;
double = i + f;
显式数据类型
强制数据类型转换可以在必要时对数据类型进行更精准的控制,但也可能会数据丢失或截断
实例:double =2.13123;
int = (int)d;
变量的声明
需要建立存储空间的
例如: int a 在声名的时候就已经建立了存储空间
不要要建立存储空间的
extern关键字声明变量名而不定义它 例如:extern int a 其中a可以在别的文件中定义。
全局变量的作用域是整个工程
常量
常量可以是任何基本数据类型,常量就是常规的变量,只不过常量的值再顶以后不能被修改
字面常量 就是自负床常量 直接写出来的数字
const 修饰的常量 不能被改变
#define 定义标识符常量
枚举常量 enum
枚举-一 一 列举
存储类
auto存储类
函数开始时被创建,函数结束时被销毁
auto int xx;
register存储类
register 存储类定义存储在寄存器,所以变量的访问速度更快,但是它不能直接取地址,因为它不是存储在 RAM 中的。在需要频繁访问的变量上使用 register 存储类可以提高程序的运行速度。
static存储类
可以在函数调用之间保持局部变量的值
extern存储类
函数
自定义函数:
返回值类型 函数名称(){
}
strlen() 求字符串长度
sizeof() 计算的是变量或类型所占空间的大小,单位是字节
数组
数据类型 数组名[] 同一个数组存储的是相同元素的集合
c99之前数组种[] 若内部填写数则必须上常量
c99之后 放入变量则不能进行初始化