在C语言中, 只能使用常量文字来初始化静态变量。例如, 以下程序编译失败。
#include<
stdio.h>
int initializer( void )
{
return 50;
}int main()
{
static int i = initializer();
printf ( " value of i = %d" , i);
getchar ();
return 0;
}
如果我们将程序更改为以下程序, 则它可以正常工作。
#include<
stdio.h>
int main()
{
static int i = 50;
printf ( " value of i = %d" , i);
getchar ();
return 0;
}
【C语言中如何初始化静态变量(代码实例)】原因很简单:必须在执行main()开始之前初始化所有具有静态存储持续时间的对象(设置为其初始值)。因此, 转换时未知的值不能用于静态变量的初始化。
感谢Venki和Prateek的贡献。
如果发现任何不正确的地方, 或者想分享有关上述主题的更多信息, 请写评论。
推荐阅读
- 8085微处理器中断详细介绍
- 如何理解同步中的关键段(详细指南)
- C语言中静态变量的默认值是什么()
- Java中的默认构造函数的介绍和用法实例
- Java如何使用TreeMap(解析和用法示例)
- CSS如何使用注释(代码示例)
- 持久系统有限公司的面试经验分享
- ghost windows7 64位旗舰版激活密钥大全制作详细说明
- 深度技术Ghost win7设置系统装机版制作详细说明