gpt4 book ai didi

linux - 如何在 Linux 上的 C 中查找未初始化的变量?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:42:31 25 4
gpt4 key购买 nike

我的 C 源代码有很多未初始化的变量。代码在RHEL 6.4操作系统上。

有没有办法找到所有未初始化的变量?

最佳答案

从数学意义上来说,找到所有是不可能的(至少没有误报)。但是,有一些工具可以帮助找到其中的一些:

  • 打开编译器警告。对于 gcc,这将是 -Wuninitialized-Winit-self-Wmaybe-uninitialized。请注意,您将需要尝试使用不同级别的优化;您将在不同的 -O 级别收到不同的警告。请注意,-Wmaybe-uninitialized(顾名思义)可能会产生误报。
  • 对于未初始化的内存(如malloc等),可以使用valgrind。这实际上需要运行程序。
  • 静态检查器,例如 splint . (感谢 Andy Lester 的建议。)

关于linux - 如何在 Linux 上的 C 中查找未初始化的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19502614/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com