static函数什么作用
来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/07/13 20:21:59
static函数什么作用
static 声明的变量在C语言中有两方面的特征:
1)、变量会被放在程序的全局存储区中,这样可以在下一次调用的时候还可以保持原来的赋值.这一点是它与堆栈变量和堆变量的区别.
2)、变量用static告知编译器,自己仅仅在变量的作用范围内可见.这一点是它与全局变量的区别.
2、问题:Static的理解
关于static变量,请选择下面所有说法正确的内容:
A、若全局变量仅在单个C文件中访问,则可以将这个变量修改为静态全局变量,以降低模块间的耦合度;
B、若全局变量仅由单个函数访问,则可以将这个变量改为该函数的静态局部变量,以降低模块间的耦合度;
C、设计和使用访问动态全局变量、静态全局变量、静态局部变量的函数时,需要考虑重入问题;
D、静态全局变量过大,可那会导致堆栈溢出.
答案与分析:
对于A,B:根据本篇概述部分的说明b),我们知道,A,B都是正确的.
对于C:根据本篇概述部分的说明a),我们知道,C是正确的(所谓的函数重入问题,下面会详细阐述).
对于D:静态变量放在程序的全局数据区,而不是在堆栈中分配,所以不可能导致堆栈溢出,D是错误的.
因此,答案是A、B、C.
3、问题:不可重入函数
unsigned int sum_int( unsigned int base ){unsigned int index;
static unsigned int sum = 0; // 注意,是static类型的.
for (index = 1; index
1)、变量会被放在程序的全局存储区中,这样可以在下一次调用的时候还可以保持原来的赋值.这一点是它与堆栈变量和堆变量的区别.
2)、变量用static告知编译器,自己仅仅在变量的作用范围内可见.这一点是它与全局变量的区别.
2、问题:Static的理解
关于static变量,请选择下面所有说法正确的内容:
A、若全局变量仅在单个C文件中访问,则可以将这个变量修改为静态全局变量,以降低模块间的耦合度;
B、若全局变量仅由单个函数访问,则可以将这个变量改为该函数的静态局部变量,以降低模块间的耦合度;
C、设计和使用访问动态全局变量、静态全局变量、静态局部变量的函数时,需要考虑重入问题;
D、静态全局变量过大,可那会导致堆栈溢出.
答案与分析:
对于A,B:根据本篇概述部分的说明b),我们知道,A,B都是正确的.
对于C:根据本篇概述部分的说明a),我们知道,C是正确的(所谓的函数重入问题,下面会详细阐述).
对于D:静态变量放在程序的全局数据区,而不是在堆栈中分配,所以不可能导致堆栈溢出,D是错误的.
因此,答案是A、B、C.
3、问题:不可重入函数
unsigned int sum_int( unsigned int base ){unsigned int index;
static unsigned int sum = 0; // 注意,是static类型的.
for (index = 1; index
static函数什么作用
static 变量 和 static 函数各有什么特点
static在此函数中的详细作用流程
static的作用static它是做什么的?
static private与private函数有什么区别?
C++、java中,static都可修饰一个函数,它们的作用相同吗?
函数里的和函数外的static变量有什么区别
static用法及作用是怎样的?
My sky static is raining什么意思
Static 和 Dim 有什么区别
1.数学表达式为-3,C语言的表达式为?2.声明一个具有全局作用域的外部函数,需要使用的关键字是static还是exte
修饰词的作用[ DllImport ( "kernel32" ) ]private static extern int