//tyoedef 类型重定义
//typedef unsigned int u_int;
//int main()
//{
// unsigned int num = 100;
// u_int num2 = 100;
//
// return 0;
//}
//static - 静态的
//1.static修饰局部变量
//2.static修饰全局变量
//3.static修饰函数
//void test()
//{
// //int a = 1;//10个2
// static int a = 1;//2到10
// //static修饰局部变量,改变了局部变量的生命周期(本质上是改变了变量的存储类型)
// a++;
// printf("%d", a);
//
//}
//int main()
//{
// int i = 0;
// while (i<10)
// {
// test();//调出test函数👆
// i++;
//
// }
// return 0;
//}
//extern 声明外部符号
//extern int g_val;//声明
//int main()
//{
// printf("%d\n", g_val);
//
// return 0;
//
//}
//声明函数
extern int Add(int x, int y);
int main()
{
int a = 10;
int b = 20;
int sum = Add(a, b);
printf("%d\n", sum);
return 0;
}
static int g_val = 2022;//全局变量
staic修饰全局变量,使得这个全局变量只能在自己所在的源文件(.c)内部可以使用,其他源文件不能使用
全局变量在其他源文件内部可以被使用是因为全局变量具有外部链接属性
但被static修饰之后变成了内部链接属性,其他文件不能链接到这个静态的全局变量
static int Add(int x, int y)
{
return x + y;
}
//staic修饰函数,使得这个函数只能在自己所在的源文件(.c)内部可以使用,其他源文件不能使用
//本质上:static是将函数的外部链接属性变成了内部链接属性
初识常见关键词2