Condividi tramite


j (Esegui se - Else)

Il comando j esegue in modo condizionale uno dei comandi specificati, a seconda della valutazione di un'espressione specificata.

j Expression Command1 ; Command2 
j Expression 'Command1' ; 'Command2' 

Parametri

Espressione
Espressione da valutare. Se questa espressione restituisce un valore diverso da zero, viene eseguito Command1 . Se questa espressione restituisce zero, viene eseguito Command2 . Per altre informazioni sulla sintassi di questa espressione, vedere Sintassi delle espressioni numeriche.

Command1
Stringa di comando da eseguire se l'espressione in Expression restituisce un valore diverso da zero (TRUE). È possibile combinare più comandi circondando la stringa di comando con virgolette singole ( ' ) e separando i comandi usando un punto e virgola. Se la stringa di comando è un singolo comando, le virgolette singole sono facoltative.

Comando2
Stringa di comando da eseguire se l'espressione in Expression restituisce zero (FALSE). È possibile combinare più comandi circondando la stringa di comando con virgolette singole ( ' ) e separando i comandi usando un punto e virgola. Se la stringa di comando è un singolo comando, le virgolette singole sono facoltative.

Ambiente

Elemento Descrizione
Modalità Modalità utente, modalità kernel
Targets Live, crash dump
Piattaforme Tutti

Commenti

Non è possibile aggiungere un punto e virgola o comandi aggiuntivi dopo il comando j . Se viene visualizzato un punto e virgola dopo Command2, tutti gli elementi dopo il punto e virgola vengono ignorati.

Il comando seguente visualizza il valore di eax se MySymbol è uguale a zero e visualizza i valori di ebx ed ecx in caso contrario.

0:000> j (MySymbol=0) 'r eax'; 'r ebx; r ecx' 

È possibile omettere le virgolette singole intorno a r eax, ma rendono il comando più facile da leggere. Se si desidera omettere uno dei comandi, è possibile includere virgolette vuote o omettere il parametro per tale comando, come nei comandi seguenti.

0:000> j (MySymbol=0) ''; 'r ebx; r ecx' 
0:000> j (MySymbol=0)  ; 'r ebx; r ecx' 

È anche possibile usare il comando j all'interno di altri comandi. Ad esempio, è possibile usare un comando j per creare punti di interruzione condizionali.

0:000> bp `mysource.cpp:143` "j (poi(MyVar)>0n20) ''; 'gc' "

Questo stile di punto di interruzione condizionale non è più consigliato, perché nel debugger è ora disponibile un modulo più semplice. Per altre informazioni sulla sintassi dei punti di interruzione condizionale, vedere Impostazione di un punto di interruzione condizionale.

Vedere anche

z (Execute While)