Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Linguagem C

Operadores em C++ com Exemplo:O que é, Tipos e Programas

O que são Operadores?


Um operador é um símbolo usado para realizar operações em operandos. Um operador opera operandos. As operações podem ser matemáticas ou lógicas. Existem diferentes tipos de operadores em C++ para realizar diferentes operações.

Considere a seguinte operação:
a = x + y;

Na declaração acima, xey são os operandos enquanto + é um operador de adição. Quando o compilador C++ encontrar a instrução acima, ele adicionará x e y e armazenará o resultado na variável a.

Neste tutorial de C++, você aprenderá:

Tipos de operadores em C++


Existem principalmente 6 tipos diferentes de operadores em C++
  1. Operadores aritméticos
  2. Operadores Relacionais
  3. Operadores lógicos
  4. Operadores bit a bit
  5. Operadores de atribuição
  6. Outros operadores

Operadores aritméticos


Eles são os tipos de operadores usados ​​para realizar operações matemáticas/aritméticas. Eles incluem:
Operador Descrição + operador de adiçãoAdiciona a operandos.– operador de subtraçãoSubtrai 2 nd operando de 1 st operando.* operador de multiplicaçãoMultiplica 2 operandos./ operador de divisão.Divide o numerador pelo denominador.% módulo operadorRetorna o resto após a divisão.++ operador de incremento Aumenta um valor inteiro em 1.— operador de decremento.Diminui um valor inteiro em 1.
Por exemplo:
#include <iostream>
using namespace std;
int main() {
	int a = 11;
	int b = 5;
	int c;

	cout << "a + b is :" << a+b << endl; //11+5

	cout << "a - b is :" << a-b << endl; //11-5

	cout << "a * b is :" << a*b << endl; //11*5

	cout << "a / b is :" << a/b << endl; //11/5

	cout << "a % b is :" << a%b << endl; //11%5

	cout << "a++ is :" << a++ << endl; //11++

	cout << "a-- is :" << a-- << endl; //12--

	return 0;
}

Saída:



Aqui está uma captura de tela do código:



Explicação do código:

  1. Incluindo o arquivo de cabeçalho iostream em nosso código. Isso nos permitirá ler e gravar no console.
  2. Incluindo o namespace std para usar suas classes e funções sem chamá-lo.
  3. Chamando a função main() dentro da qual a lógica do programa deve ser adicionada. O { marca o início do corpo da função main().
  4. Declarando uma variável inteira a e inicializando-a como 11.
  5. Declarando uma variável inteira b e inicializando-a como 5.
  6. Declarando uma variável inteira c.
  7. Impressão do valor da operação a+b junto com outro texto no console.
  8. Imprimindo o valor da operação a-b junto com outro texto no console.
  9. Impressão do valor da operação a*b ao lado de outro texto no console.
  10. Impressão do valor da operação a/b junto com outro texto no console.
  11. Impressão do valor da operação a%b ao lado de outro texto no console.
  12. Impressão do valor da operação a++ ao lado de outro texto no console.
  13. Impressão do valor da operação a– junto com outro texto no console.
  14. A função main() deve retornar um valor se o programa funcionar bem.
  15. Fim do corpo da função main().

Operadores Relacionais


Esses tipos de operadores realizam comparações em operandos. Por exemplo, você pode precisar saber qual operando é maior que o outro ou menor que o outro. Eles incluem:
Operador Descrição ==igual a operador. Verifica a igualdade de dois valores de operando.!=diferente de operador Verifica a igualdade de dois valores de operando.> grande que operador Verifica se o valor do operando esquerdo é maior que o valor do operando direito. =maior ou igual ao operador Verifica se o valor do operando esquerdo é maior ou igual ao valor do operando direito.<=menor ou igual ao operador. Verifica se o valor do operando esquerdo é menor ou igual ao valor do operando à direita.
Por exemplo:
#include <iostream>
using namespace std;

int main() {
	int a = 11;
	int b = 5;

	cout << "a=11, b=5" << endl;
	if (a == b) {
		cout << "a == b is true" << endl;
	}
	else {
		cout << " a == b is false" << endl;
	}

	if (a < b) {
		cout << "a < b is true" << endl;
	}
	else {
		cout << "a < b is false" << endl;
	}

	if (a > b) {
		cout << "a > b is true" << endl;
	}
	else {
		cout << "a > b is false" << endl;
	}

	return 0;
}

Saída:



Aqui está uma captura de tela do código:



Explicação do código:

  1. Incluindo o arquivo de cabeçalho iostream em nosso código. Isso nos permitirá ler e gravar no console.
  2. Incluindo o namespace std para usar suas classes e funções sem chamá-lo.
  3. Chamando a função main() dentro da qual a lógica do programa deve ser adicionada. O { marca o início do corpo da função main().
  4. Declarando uma variável inteira a e inicializando-a como 11.
  5. Declarando uma variável inteira b e inicializando-a como 5.
  6. Imprimindo algum texto no console informando os valores das variáveis ​​a e b.
  7. Executando a operação aritmética, a==b em uma instrução if de tomada de decisão para saber se é verdadeira ou falsa. O { marca o início do corpo da instrução if.
  8. Texto a ser impresso no console se a operação a==b for verdadeira. O endl é uma palavra-chave C++ para linha final. Ele empurra o cursor para começar a imprimir na próxima linha. O } marca o final do corpo da instrução if.
  9. A outra parte da instrução if acima. Indica o que fazer se a operação a==b for falsa.
  10. Texto a ser impresso no console se a operação a==b for falsa. O endl é uma palavra-chave C++ para linha final. Ele empurra o cursor para começar a imprimir na próxima linha. O } marca o final do corpo da instrução else.
  11. Realizando a operação aritmética, a
  12. Texto a ser impresso no console se a operação a
  13. A outra parte da instrução if acima. Indica o que fazer se a operação a
  14. Texto a ser impresso no console se a operação a
  15. Executando a operação aritmética a>b em uma instrução de tomada de decisão if para saber se é verdadeira ou falsa. O { marca o início do corpo da instrução if.
  16. Texto a ser impresso no console se a operação a>b for verdadeira. O endl é uma palavra-chave C++ para linha final. Ele empurra o cursor para começar a imprimir na próxima linha. O } marca o final do corpo da instrução if.
  17. A outra parte da instrução if acima. Indica o que fazer se a operação a>b for falsa.
  18. Texto a ser impresso no console se a operação a>b for falsa. O endl é uma palavra-chave C++ para linha final. Ele empurra o cursor para começar a imprimir na próxima linha. O } marca o final do corpo da instrução else.
  19. A função main() deve retornar um valor se o programa funcionar bem.
  20. Fim do corpo da função main().

Operadores lógicos


Os operadores lógicos combinar duas/mais restrições/condições. Os operadores lógicos também complementam a avaliação da condição original em consideração. Eles incluem:
Operador Descrição &&operador AND lógico. A condição é verdadeira se ambos os operandos não forem zero.|| operador lógico OR. A condição é verdadeira se um dos operandos for diferente de zero.! operador lógico NOT. Inverte o estado lógico do operando. Se o operando for verdadeiro, o ! operador o torna falso.
Por exemplo:
#include <iostream> 
using namespace std;
int main()
{
	int a = 5, b = 2, c = 6, d = 4;
	if (a == b && c > d)
		cout << "a equals to b AND c is greater than d\n";
	else
		cout << "AND operation returned false\n";

	if (a == b || c > d)
		cout << "a equals to b OR c is greater than d\n";
	else
		cout << "Neither a is equal to b nor c is greater than d\n";

	if (!b)
		cout << "b is zero\n";
	else
		cout << "b is not zero";

	return 0;
}

Saída:



Aqui está uma captura de tela do código:



Explicação do código:

  1. Incluindo o arquivo de cabeçalho iostream em nosso código. Isso nos permitirá ler e gravar no console.
  2. Incluindo o namespace std para usar suas classes e funções sem chamá-lo.
  3. Chamando a função main() dentro da qual a lógica do programa deve ser adicionada.
  4. O { marca o início do corpo da função main().
  5. Declarando 4 variáveis ​​inteiras a, b, c e d e atribuindo-lhes valores diferentes.
  6. Usando o operador &&(AND) dentro da instrução if. Ele une duas condições, valor de a é igual ao valor de b e, valor de a é maior que valor de b. A primeira condição é falsa, a segunda condição é verdadeira. False&&true é False, portanto, o resultado de if é false.
  7. Texto a ser impresso no console se a instrução if acima for verdadeira. Isso não será executado.
  8. Parte a ser executada se a instrução if acima for falsa.
  9. Texto a ser impresso no console se a instrução if for falsa. Isso será executado.
  10. Usando o || (OR) dentro de uma instrução if. Ele une duas condições, valor de a é igual ao valor de b e, valor de a é maior que valor de b. A primeira condição é falsa, a segunda condição é verdadeira. False||true é True, portanto, o resultado de if é true.
  11. Texto a ser impresso no console se a instrução if acima for verdadeira. Isso será executado.
  12. Parte a ser executada se a instrução if acima for falsa.
  13. Texto a ser impresso no console se a instrução if for falsa. Isso não será executado.
  14. Verificando se o valor da variável é 0.
  15. Texto a ser impresso no console se a instrução if acima for verdadeira. Isso não será executado.
  16. Parte a ser executada se a instrução if acima for falsa.
  17. Texto a ser impresso no console se a instrução if for falsa. Isso será executado.
  18. A função main() deve retornar um valor se o programa funcionar bem.
  19. Fim do corpo da função main().

Operadores bit a bit


Operadores bit a bit realizar operações em nível de bit em operandos. Primeiro, os operadores são convertidos em nível de bit e, em seguida, as operações são executadas nos operandos. Quando operações aritméticas como adição e subtração são feitas em nível de bits, os resultados podem ser alcançados mais rapidamente. Eles incluem:
Operador Descrição &(AND bit a bit). Leva 2 números (operandos) e então executa AND em cada bit de dois números. Se ambos forem 1, E retornará 1, caso contrário, 0.| (OR bit a bit) Recebe 2 números (operandos) e executa OR em cada bit de dois números. Retorna 1 se um dos bits for 1.^ (o XOR bit a bit) Recebe 2 números (operandos) e executa o XOR em cada bit de 2 números. Retorna 1 se ambos os bits forem diferentes.<<(deslocamento para a esquerda) Recebe dois números e então desloca para a esquerda os bits do primeiro operando. O segundo operando determina o total de lugares a serem deslocados.>> (deslocamento para a direita) Recebe dois números e então desloca para a direita os bits do primeiro operando. O segundo operando determina o número de casas a serem deslocadas.~ (NÃO bit a bit). Pega o número e depois inverte todos os seus bits.
#include <iostream>
using namespace std;

int main() {
	unsigned int p = 60;	  // 60 = 0011 1100  
	unsigned int q = 13;	  // 13 = 0000 1101
	int z = 0;

	z = p & q;
	cout << "p&q is : " << z << endl; // 12 = 0000 1100

	z = p | q;
	cout << "p|q is : " << z << endl; // 61 = 0011 1101

	z = p ^ q;
	cout << "p^q is : " << z << endl; // 49 = 0011 0001

	z = ~p;
	cout << "~p is : " << z << endl; // -61 = 1100 0011

	z = p << 2;
	cout << "p<<2 is: " << z << endl; // 240 = 1111 0000

	z = p >> 2;
	cout << "p>>2 is : " << z << endl; // 15 = 0000 1111

	return 0;
}

Saída:



Aqui está uma captura de tela do código:



Explicação do código:

  1. Incluindo o arquivo de cabeçalho iostream em nosso código. Isso nos permitirá ler e gravar no console.
  2. Incluindo o namespace std para usar suas classes e funções sem chamá-lo.
  3. Chamando a função main() dentro da qual a lógica do programa deve ser adicionada. O { marca o início do corpo da função main().
  4. Declarando uma variável inteira sem sinal p e atribuindo a ela um valor de 60, ou seja, 0011 1100 em binário.
  5. Declarando uma variável inteira sem sinal q e atribuindo a ela um valor de 13, ou seja, 0000 1101 em binário.
  6. Declarando uma variável inteira z e inicializando-a com 0.
  7. Executando a operação bit a bit &(AND) nas variáveis ​​p e q e armazenando o resultado na variável z.
  8. Imprimir o resultado da operação acima no console junto com outro texto.
  9. Executando o bit a bit | (OR) operação nas variáveis ​​peq e armazenamento do resultado na variável z.
  10. Imprimir o resultado da operação acima no console junto com outro texto.
  11. Executando a operação bit a bit ^ (XOR) nas variáveis ​​p e q e armazenando o resultado na variável z.
  12. Imprimir o resultado da operação acima no console junto com outro texto.
  13. Executando a operação bit a bit ~ (NOT) nas variáveis ​​p e q e armazenando o resultado na variável z.
  14. Imprimir o resultado da operação acima no console junto com outro texto.
  15. Executando a operação de deslocamento à esquerda na variável p e armazenando o resultado na variável z.
  16. Imprimir o resultado da operação acima no console junto com outro texto.
  17. Executando a operação de deslocamento para a direita na variável p e armazenando o resultado na variável z.
  18. Imprimir o resultado da operação acima no console junto com outro texto.
  19. A função main() deve retornar um valor se o programa funcionar bem.
  20. Fim do corpo da função main().

Operadores de Atribuição


Operadores de atribuição atribuir valores a variáveis. O operando/variável é adicionado ao lado esquerdo do operador enquanto o valor é adicionado ao lado direito do operador. A variável e o valor devem pertencer ao mesmo tipo de dados, caso contrário, o compilador C++ gerará um erro.
Por exemplo:
x = 5;

No exemplo acima, x é a variável/operando, =é o operador de atribuição enquanto 5 é o valor. Aqui estão os operadores de atribuição populares em C++:
Operador Descrição =(operador de atribuição simples)Atribui valor à direita à variável à esquerda.+=(Operador de atribuição de adição AND)Primeiro adiciona o valor do operando esquerdo ao valor do operando direito, em seguida, atribui o resultado à variável à esquerda.-=( Operador de atribuição de subtração AND) Ele primeiro subtrai o valor do operando direito do valor do operando esquerdo e, em seguida, atribui o resultado à variável à esquerda.*=(Operador de atribuição de multiplicação AND) Primeiro multiplica o valor do operando esquerdo pelo valor do operando direito e, em seguida, atribui o resultado a variável à esquerda./=(Operador de atribuição de divisão AND) Primeiro divide o valor do operando esquerdo pelo valor do operando direito e depois atribui o resultado à variável à esquerda.
Por exemplo:
#include <iostream> 
using namespace std;
int main()
{
	int x = 5;
	cout << "Initial value of x is " << x << "\n";

	x += 5;
	cout << "x += 5 gives :" << x << "\n";

	x -= 5;
	cout << "x -= 5 gives : " << x << "\n";

	x *= 5;
	cout << "x *= 5 gives :" << x << "\n";

	x /= 5;
	cout << "x /= 5 gives : " << x << "\n";

	return 0;
}

Saída:



Aqui está uma captura de tela do código:



Explicação do código:

  1. Incluindo o arquivo de cabeçalho iostream em nosso código. Isso nos permitirá ler e gravar no console.
  2. Incluindo o namespace std para usar suas classes e funções sem chamá-lo.
  3. Chamando a função main() dentro da qual a lógica do programa deve ser adicionada.
  4. O { marca o início do corpo da função main().
  5. Declarando uma variável inteira x e atribuindo a ela um valor de 5.
  6. Imprimindo o valor da variável x ao lado de outro texto no console. O \n é um caractere de nova linha. Move o cursor para a próxima linha ao imprimir.
  7. Adicionando 5 ao valor da variável x e atribuindo o resultado à variável x.
  8. Imprimindo o valor da variável x no console junto com outro texto.
  9. Subtrair 5 do valor de x e atribuir o resultado à variável x.
  10. Imprimindo o valor da variável x no console junto com outro texto.
  11. Multiplicando o valor da variável x por 5 e atribuindo o resultado à variável x.
  12. Imprimindo o valor da variável x no console junto com outro texto.
  13. Dividir o valor da variável x por 5 e atribuir o resultado à variável x.
  14. Imprimindo o valor da variável x no console junto com outro texto.
  15. A função main() deve retornar um valor se o programa funcionar bem.
  16. Fim do corpo da função main().

Outros Operadores


Outros operadores incluem o operador sizeof, Operador de vírgula, Operador condicional e Precedência de operadores.
Vamos discutir outros operadores suportados por C++:

operador sizeof


Este operador determina o tamanho de uma variável. Use o operador sizeof para determinar o tamanho de um tipo de dados.

Por exemplo:
#include <iostream> 
using namespace std;
int main() {
	cout<<"Size of int : "<< sizeof(int) << "\n";

	cout<<"Size of char : " << sizeof(char) << "\n";

	cout<<"Size of float : " << sizeof(float) << "\n";

	cout<<"Size of double : " << sizeof(double) << "\n";

	return 0;
}

Saída:



Aqui está uma captura de tela do código:



Explicação do código:

  1. Incluindo o arquivo de cabeçalho iostream em nosso código. Isso nos permitirá ler e gravar no console.
  2. Incluindo o namespace std para usar suas classes e funções sem chamá-lo.
  3. Chamando a função main() dentro da qual a lógica do programa deve ser adicionada. O { marca o início do corpo da função main().
  4. Determinando o tamanho do tipo de dados inteiro usando o operador sizeof e imprimindo-o junto com outro texto no console.
  5. Determinando o tamanho do tipo de dados de caractere usando o operador sizeof e imprimindo-o junto com outro texto no console.
  6. Determinando o tamanho do tipo de dados float usando o operador sizeof e imprimindo-o junto com outro texto no console.
  7. Determinando o tamanho do tipo de dados float usando o operador sizeof e imprimindo-o junto com outro texto no console.
  8. A função main() deve retornar um valor se o programa funcionar bem.
  9. Fim do corpo da função main().

Operador de vírgula


O operador de vírgula (,) aciona a execução de uma sequência de operações. Expressa o primeiro operando e descarta o resultado. Em seguida, ele avalia o segundo operando e retorna o valor e o tipo.
#include <iostream>
using namespace std;
int main() {
	int x, y;
	y = 100;
	x = (y++, y + 10, 99 + y);
	cout << x;
	return 0;
}

Saída:



Aqui está uma captura de tela do código:



Explicação do código:

  1. Incluindo o arquivo de cabeçalho iostream em nosso código. Isso nos permitirá ler e gravar no console.
  2. Incluindo o namespace std para usar suas classes e funções sem chamá-lo.
  3. Chamando a função main() dentro da qual a lógica do programa deve ser adicionada. O { marca o início do corpo da função main().
  4. Declarando duas variáveis ​​inteiras x e y.
  5. Atribuindo à variável y um valor de 100.
  6. Incrementando o valor de y e atribuindo o resultado à variável x. Ele começa com y em 100 e, em seguida, aumenta para 101 (y++). Em seguida, y é adicionado a 10. Finalmente, y, ainda em 101, é adicionado a 99, resultando em 200. x agora é 200.
  7. Imprimindo o valor da variável x no console.
  8. A função main() deve retornar um valor se o programa funcionar bem.
  9. Fim do corpo da função main().

Operador condicional


Este operador avalia uma condição e atua com base no resultado da avaliação.

Sintaxe:
Condition ? Expression2 : Expression3;

Parâmetros:
  • A Condição é a condição que deve ser avaliada.
  • Expressão1 é a expressão a ser executada se a condição for verdadeira.
  • Expressão3 é a expressão a ser executada se a condição for falsa.

Por exemplo:
#include <iostream>
using namespace std;
int main() {
	int a = 1, b;
	b = (a < 10) ? 2 : 5;
	cout << "value of b: " << b << endl;
	return 0;
}

Saída:



Aqui está uma captura de tela do código:



Explicação do código:

  1. Incluindo o arquivo de cabeçalho iostream em nosso código. Isso nos permitirá ler e gravar no console.
  2. Incluindo o namespace std para usar suas classes e funções sem chamá-lo.
  3. Chamando a função main() dentro da qual a lógica do programa deve ser adicionada. O { marca o início do corpo da função main().
  4. Declarando duas variáveis ​​inteiras a e b. A variável a recebeu o valor 1.
  5. Atribuindo valor à variável b. Se a variável a for menor que 10, b receberá o valor 2, caso contrário, b receberá o valor 5.
  6. Imprimindo o valor da variável b no console junto com outro texto.
  7. A função main() deve retornar um valor se o programa funcionar bem.
  8. Fim do corpo da função main().

Precedência de Operadores


Uma única operação pode ter mais de um operador. Nesse caso, a precedência do operador determina o primeiro avaliado.

A lista a seguir mostra a precedência dos operadores em C++, com precedência decrescente da esquerda para a direita:

(), [],*, /, %, +/-, <<,>>, ==, !=, ^, |, &&, ||, ?:, =, +=, -=, *=, /=

Resumo:

  • Os operadores são símbolos para realizar operações lógicas e aritméticas.
  • Os operadores aritméticos nos ajudam a realizar várias operações aritméticas em operandos.
  • Os operadores relacionais nos ajudam a realizar várias operações de comparação em operandos.
  • Os operadores lógicos nos ajudam a realizar várias operações lógicas em operandos.
  • Os operadores bit a bit nos ajudam a realizar operações bit a bit em operandos.
  • Os operadores de atribuição nos ajudam a realizar várias operações aritméticas em operandos.
  • O operador sizeof retorna o tamanho de uma variável ou tipo de dados.
  • O operador de vírgula executa uma sequência de operações.
  • O operador condicional avalia uma condição e age com base no resultado.

Linguagem C

  1. O que é um BioChip e tipos de BioChips
  2. Operadores C#
  3. Operadores C++
  4. Instrução C++ Switch Case com EXEMPLO
  5. Alocação dinâmica de matrizes em C++ com exemplo
  6. Sobrecarga do operador C++ com exemplos
  7. Estrutura C++ com exemplo
  8. std::list em C++ com exemplo
  9. Diferença entre estrutura e classe:explicada com exemplo de C++
  10. Tutorial de classe abstrata C# com exemplo:O que é abstração?