中易网

c语言中,对变量的初始化可以归纳为几种的方式?分别是什么?

答案:1  悬赏:80  
解决时间 2021-10-12 20:25
c语言中,对变量的初始化可以归纳为几种的方式?分别是什么?
最佳答案
     对于不同编译单位的全局变量,其初始化的顺序没有任何的保证,因此对不同编译单位里的全局变量,在它们的初始化顺序之间建立依赖性都是不明智的。     此外也没办法捕捉到全局变量初始化抛出的异常,一般来说要减少全局变量的使用,特别是限制那些要求复杂初始化的全局变量。
     1,尽量不用全局变量
     2,用静态变量,通过访问器进行访问    例如:全局变量
    int a = 5;
    int b = a;
    如果a,和b定义在同一个文件里,那没什么问题,结果b等于5.
    如果a和b定义在不同文件里,就不能保证b也等于5,也就是说不能保证a先初始化.     事实上,除了在同一个文件定义的全局对象的初始化是按照定义次序来进行的之外,其他全局或静态变量之间的初始化次序没有任何保障。解决这种问题的方法是不直接使用全局变量,而改用一个包装函数来访问,例如
int get_a()
{
static int a = 5;
return a;
}
int get_b()
{
static int b = get_a();
return b;
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
我五月一号开始吃汤臣倍健小麦胚芽油至今
在哪能买到黄芪
什么是透光石
中年人吃什么补脑效果最好?
阴颈根部细影响勃起怎么办
从旧宫坐车到王府井大街138新东安广场怎么走
百度如何提问百世汇通快递单号310010244708谁
有没有拿位大哥化学好的,能告诉我怎样用家常
路克斯奢侈品收不收鞋子喃?我家有好几双豆豆
在肇庆哪里可以看到日出?
现在很多食品中都含有“食用胶”包括挂面面条
想在兴城泡泡温泉 请问汤上温泉怎么去 价位多
惠州美宜佳便利店加盟费要多少日进斗金
中石化佳华加油站地址好找么,我有些事要过去
江门丽宫国际食品有限公司采购部电话
推荐资讯
怎样比较容易的练习架子鼓 协调性该怎么掌控
美宝莲b.b霜在哪能买到
50英寸电视,最合适的观看距离是多少?
请问谁知道阳江或阳西哪里有三菱牌汽车销售店
穿越火线最帅战队名字
怎样使鲜奶蛋糕恢复新鲜? 喝鲜奶呗!新鲜营养
科勒手持花洒价格
怎样保护好皮肤?
有没有清楚金丝楠木价位的?
从都江堰到成都城市名人酒店如何走
linux认证有哪些
什么是二八现象,
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?