問題タブ [cppcheck]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
781 参照

c++ - 文字列を std::string から const char に変換する際のデータ損失の問題 *

この関数でstringは、引数として渡します(これは、文字列として膨大な量のデータを持っています)...

SendBytes メソッドは次のように定義されています

sStr の値を出力して、適切なデータがあるかどうかを確認してみました。

次に、をに変換std::stringしますconst char *

変換後、cStrの値を出力してみました。しかし、実際には it(cStr) には実際のデータ (sStr) の 5% が含まれています...

データ全体を取得するにはどうすればよいですか?

この点で誰かが私を導くことができますか?

0 投票する
1 に答える
987 参照

c++ - SonarQube は問題を示していますが、技術的負債は 0 日です

Cppcheck を使用して C++ プロジェクトの分析を実行し、結果を SonarQube にロードしています。SonarQube は問題を示していますが、技術的負債は 0 です。

技術的負債を正しく表示するにはどうすればよいですか?

次のコマンドで Cppcheck を実行しています。

私の sonar-project.properties ファイル:

これは私が実行しているテストコードです:

SonarQube は、このコードから 3 つの問題を示しており、技術的負債はありません。技術的負債を示すために他に何をする必要がありますか?

SonarQube バージョン 4.4 と Sonar Runner バージョン 2.3 を実行しています

デバッグ ログを使用して sonar-runner を実行しましたが、Cppcheck の結果をロードする際にエラーが発生しません。

Cppcheck バージョン 1.63

また、これは C++ コミュニティ プラグイン バージョン 0.9.0 を使用していることにも言及する必要があります。

0 投票する
2 に答える
137 参照

c++ - 定数へのポインタを引数として渡す際の問題

この例では、関数呼び出しで発生しているすべてのデータ変更を取得するために、アドレスの概念による呼び出しを使用しています...

ではmain()

i) 2 つの引数を渡す i) int ポインター ii) 定数へのポインター -> 保持している値を変更できない...

ii) 関数呼び出しで int * の値を変更し、const void * にいくつかの値を割り当てます。

*最後に、値を出力しようとしていますmain()

* int ポインター値を適切に取得する (問題なし)

*void ポインター値を NULL として取得する..

要件:

main()このように出力を取得する必要があります

main::ajskdffllagkdjdjdhdjhd (つまり、このような void * 値を出力する必要があるということです)

しかし、私は main:: NULL として値を取得しています

期待される出力を得るために何をする必要がありますか?

0 投票する
2 に答える
3869 参照

c++ - Linux ソース コードでメモリ リークを検出するように cppcheck を構成する方法

Linuxソースコードのリークを検出する際のパフォーマンスをチェックするために、いくつかのオープンソースの静的分析ツールを試してみたい.私はcppcheckerから始めています. Linux では、ほとんどのメモリ割り当て呼び出しは kmalloc()、kzalloc() などの関数を介して行われ、対応する解放関数は kfree() です。デフォルトの malloc() 呼び出しの代わりに kmalloc 呼び出しを追跡するように cppchecker を構成するにはどうすればよいですか?ユーザー設定を定義できる新しい構成ファイルの作成と呼ばれるものがありますが、その方法がわかりません。

また、上記の質問のフォローアップとして、cppcheck はメモリ リーク検出のためにプロシージャ間分析を実行しますか? この目的で使用できるオープンソースの静的解析ツールは他にどのようなものがありますか?

0 投票する
0 に答える
328 参照

visual-studio - tfs ビルドでの cppcheck の実行を自動化

cppcheckビルドのビルドプロセスの一部を作りたいですtfs。ビルド前のスクリプトにコマンドを追加することは、それを実行する唯一の方法ですか? 私はPowerShellスクリプトを使用しており、次の行を追加しました。

ただし、変更を Git プロジェクトにチェックインしないとテストできません。また、これを Visual Studio 2013 から実行すると、このチェックの結果はどこに表示されますか?

0 投票する
2 に答える
1013 参照

c++ - C sscanf 関数で無視されたパターン マッチを定量化する場合

Cppcheck 1.67により、ソース コードの次の行で移植性の問題が発生しました。

これは私がそこから得たメッセージです:

libc の一部のバージョンでは、フィールド幅制限のない scanf は巨大な入力データでクラッシュする可能性があります。

フォーマット文字列の当初の意図は、2 つの整数の間の 3 つの可能なリミッター文字のうちの 1 つを受け入れることでしたが、今日では - Cppcheck [1]のおかげで -%*[,;.]リミッター文字の文字列さえも受け入れることがわかりました。ただし、無制限の部分が無視されるため、フォーマット文字列がクラッシュを引き起こす可能性があるとは思えません。

バッファ オーバーランに問題がある可能性はありますか? …もしかして裏方?


[1] 遠視と失明の間で迷子になる方法:

%1*[,;.](いくつかの API doc の後) で修正しようとしましたが、Cppcheck が問題を主張したため%*1[,;.]、同じ「成功」で試しました。とりあえず抑えないといけないようですが…

0 投票する
1 に答える
555 参照

static-code-analysis - CppCheck は廃止された関数を抑制します

cppcheck からの obsoleteFunctiosgets 警告をインラインで抑制することができません。私は試した:

// cppcheck-suppress obsoleteFunctionsgets

成功しませんでした。

この警告を経験した人はいますか? ヒントはありますか?ありがとう。