Expressões em c ++
Variáveis e constantes são úteis apenas se você pode usá-los para realizar cálculos. O termo expressão
Conteúdo
int N- // declarationn = 1- // expressão
Programadores combinar variáveis, constantes e operadores para fazer expressões. A operador realizar alguma operação aritmética em seus argumentos. A maioria dos operadores levar dois argumentos - estes são chamados operadores binários. Alguns operadores de tomar um único argumento - estes são os operadores unários.
Todas as expressões retornar um valor e um tipo.
operadores binários
UMA operador binário é um operador que recebe dois argumentos. Se você pode dizer var1 var2 op, então op deve ser um operador binário. Os operadores binários mais comuns são as mesmas operações simples que você aprendeu na escola. Os operadores binários comuns aparecem na tabela.
Video: Tutoriais de C/C++
Precedência | Operador | Significado |
---|---|---|
1 | - (unária) | Retorna o negativo de seu argumento |
2 | ++ (Unária) | Incremento |
2 | - (unária) | diminuição |
3 | * (binário) | Multiplicação |
3 | / (binário) | Divisão |
3 | % (binário) | Modulo |
4 | + (binário) | Adição |
4 | - (binário) | Subtração |
5 | =, * =,% =, + =, - = (especial) | tipos de atribuição |
O binário mais simples é o operador de atribuição observado pelo sinal de igual. O operador de atribuição diz: “Pegue o valor à direita; lado e uma loja no local à esquerda; do lado do operador”.
Multiplicação, divisão, adição, subtração, e módulo são os operadores usados para realizar operações aritméticas. Eles funcionam exatamente como os operadores aritméticos que você aprendeu na escola primária, com as seguintes considerações especiais:
Multiplicação sempre deve ser expressamente declarada e nunca está implícito como em álgebra. Considere o seguinte exemplo:
int n = // 2- declarar um variableint m = 2N- // este gera um erro
A expressão acima não atribui m o valor de 2 vezes n. Em vez disso, C ++ tenta interpretar doisn como um nome de variável. Desde nomes de variáveis não pode começar com um dígito, ele gera um erro durante a etapa de compilação.
O que o programador quis dizer foi:
int n = 2-int m = 2 * N- // isto é OK
divisão inteira joga fora o restante. Deste modo, o seguinte:
int n = 13/7 // atribui o valor de 1 a n
Quatorze dividido por 7 é 2. Treze dividido por sete é 1.
O operador módulo devolve o resto da divisão (Você pode não se lembrar modulo):
int n = 13% 7- // N conjuntos de seis
Quatorze modulo sete é zero. Treze modulo sete é seis.
Revelando expressões compostas
Uma única expressão pode incluir vários operadores:
Video: Programação em C - Aula 38 - Precedência de Operadores
int n = 5 + 100 + 32-
Quando todos os operadores são os mesmos, C ++ avalia a expressão da esquerda para a direita:
5 + 100 + 32105 + 32137
Quando diferentes operadores são combinadas numa única expressão, C ++ usa uma propriedade chamada precedência. Precedência é o fim dos operadores serem avaliados em uma expressão composto. Considere o seguinte exemplo:
int n = 5 * 100 + 32-
O que vem primeiro, multiplicação ou adição? Ou é essa expressão simplesmente avaliados da esquerda para a direita? Remeter para a mesa, que lhe diz que a multiplicação tem uma precedência de 3, que é maior do que a precedência de adição que é de 4 (valores menores têm maior precedência). Assim, a multiplicação ocorre em primeiro lugar:
5 * 100 + 32500 + 32532
A ordem das operações é anulada pelo precedência dos operadores. Como você pode ver
int n = 32 + 5 * 100-
gera o mesmo resultado:
32 + 5 * + 10032 500532
Mas e se você realmente quer 5 vezes a soma de 100 mais 32? É possível substituir a precedência dos operadores envolvendo expressões a serem executadas pela primeira vez em parênteses, como se segue:
int n = 5 * (100 + 32) -
Agora, a adição é realizada antes da multiplicação:
5 * (100 + 32) 5 * 132660
Você pode combinar parênteses para fazer expressões tão complicado como você gosta. C ++ sempre começa com os parênteses mais profundo-aninhados ele pode encontrar e trabalha o seu caminho para fora.
(3 + 2) * ((100/20) + (50/5)) (3 + 2) * (5 + 10) 5 * 1575
Você sempre pode dividir expressões complicadas, utilizando variáveis intermediárias. O seguinte é mais seguro:
factor de int = 3 + 2-int principais = (100/20) + (50/5), o total -int = principal-fator *
Atribuir um nome para valores intermediários também permite ao programador explicar as partes de uma equação complexa - o que torna mais fácil para a próxima programador para entender.