Dominando Operadores em C++: Guia Completo com Exemplos Práticos
Operadores em C++
Neste tutorial, aprenderemos sobre os diferentes tipos de operadores em C++ com a ajuda de exemplos. Na programação, um operador é um símbolo que opera sobre um valor ou variável.
Operadores são símbolos que realizam operações em variáveis e valores. Por exemplo, + é um operador usado para adição, enquanto - é usado para subtração.
Operadores em C++ podem ser classificados em 6 tipos:
- Operadores Aritméticos
- Operadores de Atribuição
- Operadores Relacionais
- Operadores Lógicos
- Operadores Bitwise
- Outros Operadores
1. Operadores Aritméticos em C++
Operadores aritméticos são usados para realizar operações aritméticas em variáveis e dados. Por exemplo,
a + b;
Aqui, o operador + é usado para somar duas variáveis a e b. Da mesma forma, existem vários outros operadores aritméticos em C++.
| Operador | Operação |
|---|---|
+ | Adição |
- | Subtração |
* | Multiplicação |
/ | Divisão |
% | Operação Módulo (Resto da divisão) |
Exemplo 1: Operadores Aritméticos
#include <iostream> using namespace std; int main() { int a, b; a = 7; b = 2; // imprimindo a soma de a e b cout << "a + b = " << (a + b) << endl; // imprimindo a diferença de a e b cout << "a - b = " << (a - b) << endl; // imprimindo o produto de a e b cout << "a * b = " << (a * b) << endl; // imprimindo a divisão de a por b cout << "a / b = " << (a / b) << endl; // imprimindo o módulo de a por b cout << "a % b = " << (a % b) << endl; return 0; }
Saída
a + b = 9 a - b = 5 a * b = 14 a / b = 3 a % b = 1
Aqui, os operadores +, - e * calculam adição, subtração e multiplicação respectivamente como esperado.
/ Operador de Divisão
Note a operação (a / b) em nosso programa. O operador / é o operador de divisão.
Como podemos ver no exemplo acima, se um inteiro é dividido por outro inteiro, obtemos o quociente. No entanto, se divisor ou dividendo for um número de ponto flutuante, obtemos o resultado em decimais.
Em C++, 7/2 é 3 7.0 / 2 é 3.5 7 / 2.0 é 3.5 7.0 / 2.0 é 3.5
% Operador Módulo
O operador módulo % calcula o resto. Quando a = 9 é dividido por b = 4, o resto é 1.
Nota: O operador % só pode ser usado com inteiros.
Operadores de Incremento e Decremento
C++ também fornece operadores de incremento e decremento: ++ e -- respectivamente.
++aumenta o valor do operando em 1--diminui em 1
Por exemplo,
int num = 5; // operador de incremento ++num; // 6
Aqui, o código ++num; aumenta o valor de num em 1.
Exemplo 2: Operadores de Incremento e Decremento
// Funcionamento dos operadores de incremento e decremento #include <iostream> using namespace std; int main() { int a = 10, b = 100, resultado_a, resultado_b; // incrementando a em 1 e armazenando resultado em resultado_a resultado_a = ++a; cout << "resultado_a = " << resultado_a << endl; // decrementando b em 1 e armazenando resultado em resultado_b resultado_b = --b; cout << "resultado_b = " << resultado_b << endl; return 0; }
Saída
resultado_a = 11 resultado_b = 99
No programa acima, usamos os operadores ++ e -- como prefixos (++a e --b). No entanto, também podemos usá-los como pós-fixos (a++ e b--).
Para saber mais, visite operadores de incremento e decremento.
2. Operadores de Atribuição em C++
Em C++, operadores de atribuição são usados para atribuir valores a variáveis. Por exemplo,
// atribui 5 a a a = 5;
Aqui, atribuímos o valor 5 à variável a.
| Operador | Exemplo | Equivalente a |
|---|---|---|
= | a = b; | a = b; |
+= | a += b; | a = a + b; |
-= | a -= b; | a = a - b; |
*= | a *= b; | a = a * b; |
/= | a /= b; | a = a / b; |
%= | a %= b; | a = a % b; |
Exemplo 3: Operadores de Atribuição
#include <iostream> using namespace std; int main() { int a, b; // 2 é atribuído a a a = 2; // 7 é atribuído a b b = 7; cout << "a = " << a << endl; cout << "b = " << b << endl; cout << "\nApós a += b;" << endl; // atribuindo a soma de a e b a a a += b; // a = a +b cout << "a = " << a << endl; return 0; }
Saída
a = 2 b = 7 Após a += b; a = 9
3. Operadores Relacionais em C++
Um operador relacional é usado para verificar a relação entre dois operandos. Por exemplo,
// verifica se a é maior que b a > b;
Aqui, > é um operador relacional. Ele verifica se a é maior que b ou não.
Se a relação for true, retorna 1; se false, retorna 0.
| Operador | Significado | Exemplo |
|---|---|---|
== | Igual a | 3 == 5 nos dá false |
!= | Diferente de | 3 != 5 nos dá true |
> | Maior que | 3 > 5 nos dá false |
< | Menor que | 3 < 5 nos dá true |
>= | Maior ou Igual a | 3 >= 5 nos dá false |
<= | Menor ou Igual a | 3 <= 5 nos dá true |
Exemplo 4: Operadores Relacionais
#include <iostream> using namespace std; int main() { int a, b; a = 3; b = 5; bool resultado; resultado = (a == b); // false cout << "3 == 5 é " << resultado << endl; resultado = (a != b); // true cout << "3 != 5 é " << resultado << endl; resultado = a > b; // false cout << "3 > 5 é " << resultado << endl; resultado = a < b; // true cout << "3 < 5 é " << resultado << endl; resultado = a >= b; // false cout << "3 >= 5 é " << resultado << endl; resultado = a <= b; // true cout << "3 <= 5 é " << resultado << endl; return 0; }
Saída
3 == 5 é 0 3 != 5 é 1 3 > 5 é 0 3 < 5 é 1 3 >= 5 é 0 3 <= 5 é 1
Nota: Operadores relacionais são usados em tomada de decisão e loops.
4. Operadores Lógicos em C++
Operadores lógicos são usados para verificar se uma expressão é true ou false. Se a expressão for true, retorna 1; se false, retorna 0.
| Operador | Exemplo | Significado |
|---|---|---|
&& | expressão1 && expressão2 | AND lógico. Verdadeiro apenas se todos operandos forem verdadeiros. |
|| | expressão1 || expressão2 | OR lógico. Verdadeiro se pelo menos um operando for verdadeiro. |
! | !expressão | NOT lógico. Verdadeiro apenas se o operando for falso. |
Em C++, operadores lógicos são comumente usados em tomada de decisão. Para entender melhor, vejamos os seguintes exemplos,
Suponha, a = 5 b = 8 Então, (a > 3) && (b > 5) avalia para true (a > 3) && (b < 5) avalia para false (a > 3) || (b > 5) avalia para true (a > 3) || (b < 5) avalia para true (a < 3) || (b < 5) avalia para false !(a < 3) avalia para true !(a > 3) avalia para false
Exemplo 5: Operadores Lógicos
#include <iostream> using namespace std; int main() { bool resultado; resultado = (3 != 5) && (3 < 5); // true cout << "(3 != 5) && (3 < 5) é " << resultado << endl; resultado = (3 == 5) && (3 < 5); // false cout << "(3 == 5) && (3 < 5) é " << resultado << endl; resultado = (3 == 5) && (3 > 5); // false cout << "(3 == 5) && (3 > 5) é " << resultado << endl; resultado = (3 != 5) || (3 < 5); // true cout << "(3 != 5) || (3 < 5) é " << resultado << endl; resultado = (3 != 5) || (3 > 5); // true cout << "(3 != 5) || (3 > 5) é " << resultado << endl; resultado = (3 == 5) || (3 > 5); // false cout << "(3 == 5) || (3 > 5) é " << resultado << endl; resultado = !(5 == 2); // true cout << "!(5 == 2) é " << resultado << endl; resultado = !(5 == 5); // false cout << "!(5 == 5) é " << resultado << endl; return 0; }
Saída
(3 != 5) && (3 < 5) é 1 (3 == 5) && (3 < 5) é 0 (3 == 5) && (3 > 5) é 0 (3 != 5) || (3 < 5) é 1 (3 != 5) || (3 > 5) é 1 (3 == 5) || (3 > 5) é 0 !(5 == 2) é 1 !(5 == 5) é 0
Explicação do programa de operadores lógicos
(3 != 5) && (3 < 5)avalia para 1 porque ambos operandos(3 != 5)e(3 < 5)são 1 (true).(3 == 5) && (3 < 5)avalia para 0 porque o operando(3 == 5)é 0 (false).(3 == 5) && (3 > 5)avalia para 0 porque ambos operandos(3 == 5)e(3 > 5)são 0 (false).(3 != 5) || (3 < 5)avalia para 1 porque ambos operandos(3 != 5)e(3 < 5)são 1 (true).(3 != 5) || (3 > 5)avalia para 1 porque o operando(3 != 5)é 1 (true).(3 == 5) || (3 > 5)avalia para 0 porque ambos operandos(3 == 5)e(3 > 5)são 0 (false).!(5 == 2)avalia para 1 porque o operando(5 == 2)é 0 (false).!(5 == 5)avalia para 0 porque o operando(5 == 5)é 1 (true).
5. Operadores Bitwise em C++
Em C++, operadores bitwise são usados para realizar operações em bits individuais. Eles só podem ser usados com tipos de dados char e int.
| Operador | Descrição |
|---|---|
& | AND binário |
| | OR binário |
^ | XOR binário |
~ | Complemento de Um binário |
<< | Deslocamento à Esquerda binário |
>> | Deslocamento à Direita binário |
Para saber mais, visite operadores bitwise em C++.
6. Outros Operadores em C++
Aqui está uma lista de alguns outros operadores comuns disponíveis em C++. Aprenderemos sobre eles em tutoriais posteriores.
| Operador | Descrição | Exemplo |
|---|---|---|
sizeof | retorna o tamanho do tipo de dado | sizeof(int); // 4 |
?: | retorna valor baseado na condição | string resultado = (5 > 0) ? "par" : "ímpar"; // "par" |
& | representa endereço de memória do operando | # // endereço de num |
. | acessa membros de variáveis struct ou objetos de classe | s1.notas = 92; |
-> | usado com ponteiros para acessar variáveis de classe ou struct | ptr->notas = 92; |
<< | imprime o valor de saída | cout << 5; |
>> | obtém o valor de entrada | cin >> num; |
Linguagem C
- Operadores em C# – Guia Completo dos Operadores em C#
- Entendendo Tipos de Dados em C++: Fundamentos, Modificadores e Boas Práticas
- Comentários em C++: Boas Práticas para Código Legível e Manutenível
- Dominando Templates de Classe em C++: Um Guia Prático
- Dominando Operadores em Programação C: Um Guia Abrangente
- Dominando Operadores em Python: Guia Completo
- Dominando Operadores Java: Tipos, Sintaxe e Exemplos Práticos
- Operadores em C++ Explicados: Tipos, Exemplos e Programas Práticos
- Guia Abrangente de Operadores em C: Tipos, Funções e Exemplos
- Linguagem de Programação C++: Visão Geral e Principais Características