Chinaunix首页 | 论坛 | 博客
  • 博客访问: 309064
  • 博文数量: 40
  • 博客积分: 1
  • 博客等级: 民兵
  • 技术积分: 670
  • 用 户 组: 普通用户
  • 注册时间: 2011-07-31 11:19
个人简介

从事银行核心系统设计开发的程序猿

文章存档

2019年(1)

2018年(4)

2017年(11)

2016年(6)

2015年(18)

分类: AIX

2017-05-12 00:15:58

在C/C++程序中,全局和静态变量,编译器会默认初始化为0。而局部变量是没有默认值的,分配到的内存空间保留原有无意义的值。

在很多老旧代码中,初始化和使用都不规范,导致非常容易出现异常情况。

为了降低异常的概率,通过xlc的编译参数,可以让局部变量也进行默认值初始化动作。


参考xlc的帮助:

         -qinitauto= | -qnoinitauto
                Initializes each byte or word of storage for
                automatic variables to the specified hexadecimal
                value . This generates extra code and
                should only be used for error determination.


于是,只要在编译选项中增加-qinitauto=00,即可。


阅读(3321) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~