D fornece os operadores relacionais binários, mostrados na tabela seguinte, a serem usados em seus programas. Todos esses operadores possuem o mesmo significado que em ANSI-C.
Tabela 2–7 Operadores relacionais de D
< |
o operando esquerdo é menor que o operando direito |
<= |
o operando esquerdo é menor ou igual ao operando direito |
> |
o operando esquerdo é maior que o operador direito |
>= |
o operando esquerdo é maior ou igual ao operando direito |
== |
o operando esquerdo é igual ao operando direito |
!= |
o operando esquerdo não é igual ao operando direito |
Os operadores relacionais são os mais usados para escrever predicados de D. Cada operador é avaliado com um valor de tipo int que é igual a um, se a condição for verdadeira, ou zero se for falsa.
Operadores relacionais podem ser aplicados a pares de inteiros, ponteiros ou seqüências. Se os ponteiros forem comparados, o resultado será equivalente a uma comparação de inteiros dos dois ponteiros interpretados como inteiros não assinados. Se as seqüências forem comparadas, o resultado será determinado como se estivesse sendo realizada uma strcmp(3C) nos dois operandos. Eis alguns exemplos de comparações de seqüências de D e seus resultados:
"café" < "expresso" |
... retorna 1 (verdadeiro) |
"café" == "café" |
... retorna 1 (verdadeiro) |
"café" >= "mocha" |
... retorna 0 (falso) |
Operadores relacionais também podem ser usados para comparar um objeto de dados associado a um tipo de enumeração com qualquer uma das marcas de enumerador definidas pela enumeração. Enumerações são um recurso para criar constantes de inteiro nomeadas e são descritas em mais detalhes no Capítulo 8Definições de tipo e de constante.