j (Execute If - Else)
j命令會根據指定運算式的評估,有條件地執行其中一個指定的命令。
j Expression Command1 ; Command2
j Expression 'Command1' ; 'Command2'
參數
表達
要評估的運算式。 如果此運算式評估為非零值, 則會執行 Command1 。 如果此運算式評估為零, 則會執行 Command2 。 如需此運算式語法的詳細資訊,請參閱 數值運算式語法。
Command1
如果 Expression 中的運算式評估為非零值, (TRUE) ,則要執行的命令字串。 您可以使用分號來結合多個命令,方法是將命令字串周圍加上單引號 ( ' ) 和分隔命令。 如果命令字串是單一命令,則單引號是選擇性的。
Command2
如果 Expression 中的運算式評估為零,則為要執行的命令字串, (FALSE) 。 您可以使用分號來結合多個命令,方法是將命令字串周圍加上單引號 ( ' ) 和分隔命令。 如果命令字串是單一命令,則單引號是選擇性的。
環境
項目 | 描述 |
---|---|
模式 | 使用者模式、核心模式 |
目標 | 即時、損毀傾印 |
平台 | 全部 |
備註
您無法在 j 命令之後新增分號或其他命令。 如果 Command2後面出現分號,則會忽略分號之後的所有專案。
如果MySymbol等於零,則下列命令會顯示eax的值,否則會顯示ebx和ecx的值。
0:000> j (MySymbol=0) 'r eax'; 'r ebx; r ecx'
您可以省略 r eax周圍的單引號,但讓命令更容易閱讀。 如果您想要省略其中一個命令,您可以包含空的引號或省略該命令的參數,如下列命令所示。
0:000> j (MySymbol=0) ''; 'r ebx; r ecx'
0:000> j (MySymbol=0) ; 'r ebx; r ecx'
您也可以在其他命令內使用 j 命令。 例如,您可以使用 j 命令來建立條件中斷點。
0:000> bp `mysource.cpp:143` "j (poi(MyVar)>0n20) ''; 'gc' "
不再建議使用這種條件式中斷點樣式,因為偵錯工具現在提供更簡單的表單。 如需條件中斷點語法的詳細資訊,請參閱 設定條件式中斷點。
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應