Programar em C/Operadores: diferenças entre revisões

48 bytes adicionados ,  07h24min de 22 de junho de 2007
Precedência de operadores aritméticos (o operador aritmético tem maior precedência do que o operador de asignment)
 
Table 4-3: PrecedencePrioridade ofdos Arithmeticoperadores Operatorsaritméticos
{| border 1
| PrecedencePrioridade || OperatorOperador
|-
| HighestAlta || – (unaryOperador unário de negationnegação)
|-
| MiddleMédia-alta || * / %
|-
| LowestNormal || + –
|}
No caso de termos na mesma instrução operadores com o mesmo nível de precedência (prioridade) fazer a regra da esquerda para a direita. eg. a=8/2*4 seria 16 e não 1, porque temos a divisão está no lado esquerdo.
 
 
 
 
Mais um ponto em relação ao operador “%” módulo (modulus). Podemos fazer o modulusmódulo para números inteiros mas se tentarmos para floatingnúmeros do tipo numbersfloat (ou um deles) fica indefinido. Geralmente resulta num erro de compilação (mas isso vai depender do compilador)
 
 
O que é que resulta se adicionarmos um int por um float e esse float com casas decimais e colocarmos esse resultado num int?
o que resulta é que o resultado fica truncado. é a mesma situação de declarar um int e colocar um float. como foi visto no capitulo das variáveis.
 
 
 
 
 
== type casting ==
22

edições