C语言——关键字typedef和static

一、typedef

顾名思义,类型定义,此处理解为类型重命名

使用:

typedef unsigned int uint;
int main()
{
	uint a= 0;//等价于  unsigned int a = 0;

	return 0;
}

二、static

static,静态的,是用来修饰变量和函数的

1.修饰局部变量——称为静态局部变量

2.修饰全局变量——称为静态全局变量

3.修饰函数——称为静态函数

1.修饰局部变量

举例:

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

void test()
	{
		int a = 1;
		a++;
		printf("%d ", a);
	}
int main()
	{
		int i = 0;
		while (i < 10)
		{
			test();
			i++;
		}
		return 0;
	}

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

void test()
	{
		static int a = 1;
		a++;
		printf("%d ", a);
	}
int main()
	{
		int i = 0;
		while (i < 10)
		{
			test();
			i++;
		}
		return 0;
	}

结论:

1.static修饰局部变量时,局部变量出了作用域,不销毁。本质上,static修饰局部变量时,改变了变量的存储位置。影响了变量的生命周期,变长,变得和程序的生命周期一样长。

2.修饰全局变量

全局变量具有外部链接属性。

编译+链接-->可执行程序

static修饰全局变量时,这个全局变量的外部链接属性变成了内部链接属性,其他源文件不能使用这个全局变量了。

3.修饰函数

函数具有外部链接属性,和修饰全局变量一样,就不展示了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值