私はframa-cツールを使用して以下のコードを分析します。frama-cによって生成されるpdgsの円ノードの意味
int main (int argc, char *argv[])
{
int i,a;
for (i = 0; i < 100; i += 1)
{
a=0;
if (a==0)
{
continue;
}
else
{
break;
}
}
return 0;
}
cmdは私の質問は、制御依存についてです
frama-c -pdg -dot-pdg graph main.c
です。サークルノードとは何ですか?私はループが "i < 100"から始まるので、 "while"ノードを説明しようとします。おそらく、1つの時間ループを表しています。そのため、コントロールの依存関係( "i < 100" ------ o "while" )。私は正しいと思いますか? "break"ノードの意味は何ですか?私はノード "goto __Cont;" "休憩"に関連している"else"ブロックの文。
私は、コントロールの依存関係を完全かつ正確に理解するために私の頭の中に明確な抽象モデルがないと思います。私を助けたり、何か提案してくれませんか?多くの先生のおかげでタオ。
なぜ "a = 0"と "a == 0"が "ブレーク"に丸める制御依存性を持つのですか?休憩は彼らをもはや実行させないので、? – user1283336