1 / 29
文档名称:

第14章 变量的存储类别.ppt

格式:ppt   页数:29
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第14章 变量的存储类别.ppt

上传人:中国课件站 2011/9/6 文件大小:0 KB

下载得到文件列表

第14章 变量的存储类别.ppt

文档介绍

文档介绍:第14章变量的存储类别及 内部、外部函数
一、变量的存储类型
1、自动变量
2、静态变量
3、寄存器变量
4、外部变量
二、内部函数和外部函数
1、内部函数
2、外部函数
对变量的定义需要给出两方面的属性:
指变量的名称、类型、取值范围和占据存贮空间的大小。如整型,实型,字符型等。
变量存在的时间(生存期)、作用范围和在硬件中存放的地点(区域)。
数据类型:
存储类别:
变量定义的一般形式为:
一、变量的存储类型
内存中供用户使用的空间有三部分:
用户区
程序区
静态存储区
动态存储区
存放程序的可执行代码。
存放全局变量和静态局部变量。
存放函数调用时调用函数的现场保护、自动局部变量和函数形参。
1、自动变量
用关键字auto作存储类型说明的局部变量(包括形参)称为自动变量。
自动变量存放在动态存储区,都是动态分配存储空间的。
C语言规定:在局部变量的定义中,可省略关键字auto。即:没有指明存储类别的变量,一律隐含为:自动变量。
例:main( )
{ int x , y;
······ }
int hanshu( auto int a )
{ auto int b, c, d;
······ }
例自动变量的特点示例。
#include <>
void f (int n)
{
auto int s=0; /*auto可以省略*/
s=s+1;
printf("No.%d:s=%d\n",n,s);
}
void main()
{
int num;
for(num=1;num<4;num++)
f (num);
}
程序运行结果:
:s=1
:s=1
:s=1
2、静态变量
所有全局变量和用关键字static作存储类型说明的局部变量称为静态变量。
静态变量存放在静态存储区,一旦为其分配了存储单元,它们在整个程序执行期间将固定地占用这些存储单元。
由于所有全局变量都是静态类的,C规定,在定义全局变量时“static”可以省去不写。
静态全局变量仅能为本源文件中各函数使用,不能为本源文件以外的其他源文件使用。
静态变量举例
int hanshu( int x ) { static int m, n=5;
/* 定义m,n为静态局部变量*/
int y=0 ;
printf("m=%d,n=%d,y=%d\n", m, n, y);
m++ ; n++ ; y++ ;
return ( x+y+m+n );
}
main ( )
{ int a=2 , k ;
for ( k=1;k<=3;k++)
printf("%d)hanshu(%d)=%d\n",k, a, hanshu(a));
}
程序运行结果:
m=0,n=5,y=0
1)hanshu(2)=10
m=1,n=6,y=0
2)hanshu(2)=12
m=2,n=7,y=0
3)hanshu(2)=14
例局部静态变量的特点示例。
#include <>
void f (int n)
{
static int s=0;
s=s+1;
printf("No.%d:s=%d\n",n,s);
}
void main()
{
int num;
for(num=1;num<4;num++)
f (num);
}
程序运行结果:
:s=1
:s=2
:s=3
静态变量的特点:
静态局部变量在整个程序运行期间固定占有存储单元。
静态局部变量和全局变量一样,只在编译时赋初值一次,以后每次函数调用时使用上次函数调用结束时的保留值。
静态局部变量定义时如不赋初值,系统编译时会自动对数值型静态局部变量赋初值为0;对字符型静态局部变量赋初值为空字符。
静态局部变量仅能为本函数使用,其他函数不能使用和影响它们。
自动变量和静态局部变量区别:
自动变量的值在函数调用结束后不再保留,下次调用不能使用已有的值。
静态局部变量在函数调用结束后,仍然保留上次调用结束的值。

最近更新

2025年西安明德理工学院单招职业技能测试模拟.. 40页

新慢性非传染性疾病的预防和控制 170页

2025年贵州农业职业学院单招职业技能测试模拟.. 40页

2025年贵州电子信息职业技术学院单招职业技能.. 39页

2025年贵州省黔南布依族苗族自治州单招职业倾.. 42页

2025年贵州财经职业学院单招职业技能考试模拟.. 40页

2026年枣庄职业学院单招职业技能测试模拟测试.. 42页

2025年辽宁广告职业学院单招职业倾向性测试题.. 40页

2025年辽宁理工职业大学单招职业适应性测试模.. 41页

2026年江苏卫生健康职业学院单招职业倾向性考.. 42页

2025年郑州信息工程职业学院单招综合素质考试.. 38页

2025年郑州工业安全职业学院单招职业倾向性测.. 39页

2025年郑州理工职业学院单招职业技能测试模拟.. 39页

2026年河南交通职业技术学院单招职业倾向性考.. 42页

2026年河南对外经济贸易职业学院单招职业技能.. 42页

2025年重庆对外经贸学院单招职业倾向性测试模.. 40页

2026年温州商学院单招职业技能考试模拟测试卷.. 42页

2025年重庆电信职业学院单招职业适应性测试模.. 41页

2026年漳州卫生职业学院单招综合素质考试题库.. 43页

2025年铜陵职业技术学院单招职业适应性考试模.. 39页

2025年长沙南方职业学院单招职业适应性测试题.. 40页

2026年甘肃单招学校试题及答案1套 42页

2025年阳泉职业技术学院单招职业技能测试模拟.. 40页

2026年福建幼儿师范高等专科学校单招职业适应.. 43页

2025年陕西省建筑工程总公司职工大学单招综合.. 40页

2026年福建艺术职业学院单招职测考试题库及答.. 42页

2025年广州卫生职业技术学院单招职业技能测试.. 64页

美团代运营业务委托合同 6页

新概念青少版2A各单元重点归纳 15页

九年级家长会课件PPT下载(初三2班) 25页