一、关键字
1、teypedef
typedef unsigned int uint;//在此处typedef的作用是将unsigned int这个名字和uint相等了起来,
//即在后面用uint命名时就是再用unsigned int,,,就是把名字简化一下
typedef struct Node
{
int data;
struct Node* next;
}Node;//在此处NOode就代替了struct NOde这一整个结构体,在之后的命名非常方便。
int main()
{
//关键字//
//typedef
unsigned int num = 0;
uint num2 = 1;//在这里uint 就是前面unsigned int,因此num2也是无符号整数类型unsigned int
printf("%d",num2);//1
struct Node n;
Node n2;//在此处n和n2的创建方式是一样的,只是在上面用tupedef把struct Node这个复杂的命名变成Node了,
//两者名字相等了,因此n2和n来自一个地方
return 0;
}
2、static
关键字static
static是用来修饰变量和函数的
1.可修饰局部变量——称为静态局部变量
static修饰的局部变量,局部变量出了作用域也不会被销毁,
static修饰局部变量时,改变了存储位置(将a从栈区搬移到静态区),影响了变量的生命周期(边长),和程序的生命周期一样长。
被修饰的变量数据不会被销毁,并且运行完了会覆盖上次的值,且保存下来,
2.可修饰全局变量——成为静态全局变量
3.修饰函数——成为静态函数
(1)修饰局部变量
void test()
{
int a = 1;//
a++;
printf("%d",a);//2222222222(为何结果是10个2,因此每次进入循环while,
//之后就会再次进入函数test,然后创建a,之后a++然后打印&#x