Qual é a diferença entre uma expressão condicional e um comando condicional?

Em certo sentido, eles são muito semelhantes. A expressão C é avaliada e um ramo tomado.

A diferença é o que se faz com o resultado. No primeiro exemplo, o resultado (expressão A ou B) é um valor R, que pode ser atribuído a outra coisa. Normalmente, o? operador é usado como tal:

d = c? a: b;

se c for verdadeiro, a é atribuído à variável d. Caso contrário, b é atribuído a d.

Na instrução if, A e B não são usados ​​como valores R. Eles não são usados ​​como expressões, mas como declarações. Ambos A e B devem ter um efeito externo e não simplesmente retornar um valor.

um exemplo mais detalhado:

d = c? pecado (a): pecado (b);

Isso faz sentido. o cálculo é atribuído a d

if (c)

pecado (a);

outro

pecado (b);

Isto não faz sentido. O resultado do cálculo é descartado.

Você pode reproduzir o efeito de? com se, incluindo a atribuição nas declarações

if (c)

d = sin (a);

outro

d = sin (b);

Isso faz a mesma coisa que o? exemplo.

Em linguagens de programação,

qual é a diferença entre a expressão condicional:

TÁXI

e um comando condicional:

se (C) A; else B;

Obrigado pela ajuda!!!