今天的学习接着昨天的学习继续研究变量——变量的存储类型。C语言中存储类别又分为四类:自动(auto)、静态(static)、寄存器的(register)和外部的(extern)。
而C语言根据变量的生存周期来划分,则可以分为静态存储方式和动态存储方式。
静态存储方式:是指在程序运行期间分配固定的存储空间的方式。静态存储区中存放了在整个程序执行过程中都存在的变量,如全局变量。
动态存储方式:是指在程序运行期间根据需要进行动态的分配存储空间的方式。动态存储区中存放的变量是根据程序运行的需要而建立和释放的,通常包括:函数形式参数;自动变量;函数调用时的现场保护和返回地址等。
#include<stdio.h>
extern int a=1;//外部变量a
//定义一个函数
int f(int a)
{
int y=97,z=a+y;//y,z为自动变量 y,z
printf("y=%d,z=%d\n",y,z);
return 0;
}
int main()
{
f(12);
int y=12;
printf("y+a=%d",y+a);//输出外部变量与自动变量的和
return 0;
}