next up previous contents
Next: Expressão para manipulação de Up: Expressões Previous: Expressões aritméticas   Sumário

Expressões condicionais

Um tipo muito importante de expressão em C é a expressão condicional, cujo resultado é um valor que será interpretado como falso ou verdadeiro. Como a linguagem C não suporta diretamente o tipo de dado booleano, ela trabalha com representações inteiras para denotar estes valores -- o resultado de uma expressão condicional é um valor inteiro que será interpretado como falso quando o valor resultante da expressão é igual a 0, e como verdadeiro quando o valor resultante é diferente de 0.

Assim, qualquer expressão inteira pode ser interpretada como uma expressão condicional. A situação mais comum, entretanto, é ter uma expressão condicional comparando valores através dos operadores relacionais. Os operadores relacionais em C são:

> maior que
>= maior que ou igual a
< menor que
<= menor que ou igual a
== igual a
!= diferente de
Observe que o operador de igualdade é ==, e não = como em Pascal! Esta é uma causa comum de erros para programadores que estão acostumados com outras linguagens onde = é um operador relacional.

Expressões condicionais elementares (comparando duas variáveis ou uma variável e uma constante) podem ser combinadas para formar expressões complexas através do uso de operadores booleanos. Estes operadores são

&& AND
|| OR
! NOT
O operador && (and) resulta verdadeiro quando as duas expressões envolvidas sãão verdadeiras (ou diferente de 0). O operador || (or) resulta verdadeiro quando pelo menos uma das duas expressões envolvidas é verdadeira. Além destes dois conectores binários, há também o operador unário de negação, !, que resulta falso quando a expressão envolvida é verdadeira (diferente de 0) ou resulta verdadeiro quando a expressão envolvida é falsa (igual a 0).

Expressões lógicas complexas, envolvendo diversos conectores, são avaliadas da esquerda para a direita. Além disto, && tem precedência maior que ||, e ambos têm precedência menor que os operadores lógicos relacionais e de igualdade. Entretanto, recomenda-se sempre a utilização de parênteses em expressões para tornar claro quais operações são desejadas. A exceção a esta regra ocorre quando um número excessivo de parênteses pode dificultar ainda mais a compreensão da expressão; em tais casos, o uso das regras de precedência da linguagem pode facilitar o entedimento da expressão.


next up previous contents
Next: Expressão para manipulação de Up: Expressões Previous: Expressões aritméticas   Sumário
Ivan L. M. Ricarte 2003-02-14