C++ 未初始化变量,purify检测不到???why!

lulu0126 2009-09-21 10:32:11


main(){
int i=10, j;
i = j; /* UMC: j is uninitialized, copied into i */
printf("i = %d\n", i); /* UMR: Using i, which has junk value */
}
...全文
125 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
mymtom 2009-09-22
  • 打赏
  • 举报
回复
这些工具多半是忽悠领导们用的。
真正强的是lint, 看看Solaris上lint的输出吧

lint 060.c
(7) warning: variable may be used before set: j

argument unused in function
(4) argc in main
(4) argv in main

function returns value which is always ignored
printf
mymtom@t1000:src/2009/060$ cat 060.c
#include <stdio.h>

int
main(int argc, char *argv[])
{
int i = 10, j;
i = j; /* UMC: j is uninitialized, copied into i */
printf("i = %d\n", i); /* UMR: Using i, which has junk value */

return 0;
}

lint 060.c
(7) warning: variable may be used before set: j

argument unused in function
(4) argc in main
(4) argv in main

function returns value which is always ignored
printf
lulu0126 2009-09-22
  • 打赏
  • 举报
回复
purify

不只能查内存泄漏了!

以下代码

void main(){


char* p =new char[10];

std::cout<<p[10]<<std::endl;




}


会报以下信息的,当然这里我要说的不是内存泄漏问题!
[E] ABR: Array bounds read in main {1 occurrence}



呵呵 非常感谢4楼! 哦!



我要给这个帖子加分怎么加呢!???
thy38 2009-09-22
  • 打赏
  • 举报
回复
相信人比软件强吧
XXGGYYXX 2009-09-22
  • 打赏
  • 举报
回复
过这工具过这工具
taodm 2009-09-22
  • 打赏
  • 举报
回复
purify不是查内存泄漏的嘛。什么时候改行的?
herman~~ 2009-09-22
  • 打赏
  • 举报
回复
没用过
不过vs05以上 变量未初始化好像是有warning,只要你设置了一定的警告级别
zgjxwl 2009-09-21
  • 打赏
  • 举报
回复
没用过这工具。。。

64,691

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧