GimpelのPC-LINTはぶら下がっているポインターを追跡できませんか?

StackOverflow https://stackoverflow.com/questions/3674254

  •  01-10-2019
  •  | 
  •  

質問

私は最近、PC-Lint9を使用してさまざまなエラーを見つけてきましたが、本当に心を吹き飛ばしましたが、PC-Lint9はぶら下がっているポインターを追跡できないようです。

int* pkInt = new int;
int* pkDangInt = pkInt;
delete pkInt;
( *pkDangInt ) = 1;

PC-LINTで検出されたエラーはありません。広告が「ぶら下がっていないポインターの検出」と書かれているので、構成に何か問題があるかもしれません(エラーを抑制して警告レベルを3に設定しませんでした)。誰かがこれを解決する方法を知っていますか?

役に立ちましたか?

解決

おそらく広告は「の検出」として読む必要があります いくつかの ぶら下がり...」。偽陽性と偽陰性の間の古いジレンマ...

今、私はあなたがPC-Lintがぶら下がっているポインターをまったく検出するだろうと思います。それはあなたの例を検出するはずです。しかし、おそらく以下のより構造的なものは簡単で、実際には唯一の種類が検出されます。試してもらえますか?

int* pkDangInt;
{
  int x;
  pkDangInt = &x;
}
( *pkDangInt ) = 1;
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top