インクルード/マクロ設定について
はじめに
Understand で C/C++ コードを解析する場合、以下に挙げる内容を設定することで、より正確な解析が期待できます。
未解決インクルードの解決
解析時に未解決のインクルードが見つかった場合、[プロジェクト]-[プロジェクトの設定]-[C++]-[インクルード] から、未解決インクルードの検索と設定をおこなうことができます。
未解決マクロの解決
解析時に未解決のマクロが見つかった場合、[プロジェクト]-[プロジェクトの設定]-[C++]-[マクロ] から、未解決マクロの検索と設定をおこなうことができます。
ファイルタイプの設定
[プロジェクト]-[プロジェクトの設定]-[ファイルタイプ] から、各拡張子のファイルをどの解析モードで解析するのか、設定することができます。
例えば、初期設定では、拡張子”*c”,”.h”は「C言語」として解析するよう設定されていますが、C++言語で拡張子”*.h”を使用している場合には、”*.h”を「C++言語」として解析するよう設定を変更します。
ファイルエンコーディングの設定
[プロジェクト]-[プロジェクトの設定]-[ファイルオプション] から、プロジェクトで使用するファイルのエンコーディングを指定します。初期設定では “System” エンコーディングが指定されています。
Fuzzy モードでは、多くの場合 “System” 設定のままで問題ありませんが、Strict モードで解析をおこなう場合には “System” ではなく、”Shift_JIS” や “EUC-JP” など、使用しているエンコーディングを明示的に指定してください。
オプションの設定
[プロジェクト]-[プロジェクトの設定]-[C/C++]-[オプション] から、各種オプションを設定することができます。
Fuzzy モードの場合には、”コンパイラ”を指定することで、各コンパイラで定義されているマクロ・型などを解析結果に反映させることができます。
Strict モードの場合には、解析対象のコードの”ターゲット”, “言語規格”を適切に指定してください。