返回信息流gcc 编译,可是其中有这么一段
static FILE
*display=stdout, /* screen display file */
*opf=stdout; /* current output destination */
每次编译总是会提示initializer element is not constant该错误。不知道如何修改,请大牛们给下建议呗!!![ema23][ema23][ema23]
查找后得知其中原因在于:
C语言初始化一个全局变量或static变量时,只能用常量赋值,不能用变量赋值!
然而仍然不知道怎么改呀,泪奔……[ema1][ema1]
这是一条镜像帖。来源:北邮人论坛 / cpp / #81126同步于 2014/7/29
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
initializer element is not constant该如何破解呢,求大牛告知
mophei
2014/7/29镜像同步5 回复
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
//
#include <stdio.h>
FILE* des = (FILE*)0;
int main()
{
des = stdout;
// ...
}
【 在 mophei 的大作中提到: 】
: 怎么个意思?
【 在 mophei 的大作中提到: 】
: 怎么个意思?
编译期初始化全局变量和全局static变量,所以要用一个编译期就能得到值的量去初始化你的那个static常量,普通变量是运行时初始化的。。
【 在 banbantu 的大作中提到: 】
: 编译期初始化全局变量和全局static变量,所以要用一个编译期就能得到值的量去初始化你的那个static常量,普通变量是运行时初始化的。。
谢大牛,这下清楚了