產生我用郵資-C的工具來分析以下中的代碼PDGS圓節點的意義。什麼這是由郵資-C
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
我的問題是有關控制的依賴。圓節點的含義是什麼?我試圖解釋「而」節點,也許它代表一個時間循環,因爲「我< 100」,所以有控制關係(一個循環開始「我< 100」 ------○「而」 )。我猜對了嗎?但是什麼是「休息」節點呢?我猜那個節點「goto __Cont;」與「打破」有關;語句在「else」塊中。
我覺得我沒有清晰的抽象模型來理解完全和準確的控制依賴。你能幫我或給我任何建議嗎?很多先謝道。
爲什麼「a = 0」和「a == 0」對循環「break」有控制依賴性?因爲休息會讓他們不再執行任何事情? – user1283336 2012-03-30 02:21:58