En este tutorial, aprenderemos sobre los diferentes tipos de operadores en C ++ con la ayuda de ejemplos. En programación, un operador es un símbolo que opera sobre un valor o una variable.
Los operadores son símbolos que realizan operaciones sobre variables y valores. Por ejemplo, +
es un operador utilizado para la suma, mientras que -
es un operador utilizado para la resta.
Los operadores en C ++ se pueden clasificar en 6 tipos:
- Operadores aritméticos
- Operadores de Asignación
- Operadores relacionales
- Operadores logicos
- Operadores bit a bit
- Otros operadores
1. Operadores aritméticos de C ++
Los operadores aritméticos se utilizan para realizar operaciones aritméticas en variables y datos. Por ejemplo,
a + b;
Aquí, el +
operador se usa para sumar dos variables ay b. De manera similar, hay varios otros operadores aritméticos en C ++.
Operador | Operación |
---|---|
+ | Adición |
- | Sustracción |
* | Multiplicación |
/ | División |
% | Operación de módulo (resto después de la división) |
Ejemplo 1: operadores aritméticos
#include using namespace std; int main() ( int a, b; a = 7; b = 2; // printing the sum of a and b cout << "a + b = " << (a + b) << endl; // printing the difference of a and b cout << "a - b = " << (a - b) << endl; // printing the product of a and b cout << "a * b = " << (a * b) << endl; // printing the division of a by b cout << "a / b = " << (a / b) << endl; // printing the modulo of a by b cout << "a % b = " << (a % b) << endl; return 0; )
Salida
a + b = 9 a - b = 5 a * b = 14 a / b = 3 a% b = 1
Aquí, los operadores +
, -
y *
además de cómputo, resta y multiplicación, respectivamente, como era de esperar.
/ Operador de división
Tenga (a / b)
en cuenta la operación en nuestro programa. El /
operador es el operador de división.
Como podemos ver en el ejemplo anterior, si un número entero se divide por otro entero, obtendremos el cociente. Sin embargo, si el divisor o el dividendo es un número de punto flotante, obtendremos el resultado en decimales.
En C ++, 7/2 es 3 7.0 / 2 es 3.5 7 / 2.0 es 3.5 7.0 / 2.0 es 3.5
% Operador de módulo
El operador de módulo %
calcula el resto. Cuando a = 9
se divide por b = 4
, el resto es 1 .
Nota: El %
operador solo se puede utilizar con números enteros.
Operadores de incremento y decremento
C ++ también proporciona operadores de incremento y decremento: ++
y --
respectivamente. ++
aumenta el valor del operando en 1 , mientras que lo --
disminuye en 1 .
Por ejemplo,
int num = 5; // increasing num by 1 ++num;
Aquí, el valor de num aumenta a 6 desde su valor inicial de 5 .
Ejemplo 2: Operadores de incremento y decremento
// Working of increment and decrement operators #include using namespace std; int main() ( int a = 10, b = 100, result_a, result_b; // incrementing a by 1 and storing the result in result_a result_a = ++a; cout << "result_a = " << result_a << endl; // decrementing b by 1 and storing the result in result_b result_b = --b; cout << "result_b = " << result_b << endl; return 0; )
Salida
resultado_a = 11 resultado_b = 99
En el programa anterior, usamos un operador ++
y --
como prefijos . También podemos usar estos operadores como sufijo .
Hay una ligera diferencia cuando estos operadores se utilizan como prefijo frente a cuando se utilizan como sufijo.
Para obtener más información sobre estos operadores, visite operadores de incremento y decremento.
2. Operadores de asignación de C ++
En C ++, los operadores de asignación se utilizan para asignar valores a las variables. Por ejemplo,
// assign 5 to a a = 5;
Aquí, le hemos asignado un valor de 5
a la variable a.
Operador | Ejemplo | 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; |
Ejemplo 2: Operadores de asignación
#include using namespace std; int main() ( int a, b, temp; // 2 is assigned to a a = 2; // 7 is assigned to b b = 7; // value of a is assigned to temp temp = a; // temp will be 2 cout << "temp = " << temp << endl; // assigning the sum of a and b to a a += b; // a = a +b cout << "a = " << a << endl; return 0; )
Salida
temp = 2 a = 9
3. Operadores relacionales de C ++
A relational operator is used to check the relationship between two operands. For example,
// checks if a is greater than b a> b;
Here, >
is a relational operator. It checks if a is greater than b or not.
If the relation is true, it returns 1 whereas if the relation is false, it returns 0.
Operator | Meaning | Example |
---|---|---|
== | Is Equal To | 3 == 5 gives us false |
!= | Not Equal To | 3 != 5 gives us true |
> | Greater Than | 3> 5 gives us false |
< | Less Than | 3 < 5 gives us true |
>= | Greater Than or Equal To | 3>= 5 give us false |
<= | Less Than or Equal To | 3 <= 5 gives us true |
Example 4: Relational Operators
#include using namespace std; int main() ( int a, b; a = 3; b = 5; bool result; result = (a == b); // false cout << "3 == 5 is " << result << endl; result = (a != b); // true cout << "3 != 5 is " << result < b; // false cout < 5 is " << result << endl; result = a < b; // true cout << "3 < 5 is " << result <= b; // false cout <= 5 is " << result << endl; result = a <= b; // true cout << "3 <= 5 is " << result << endl; return 0; )
Output
3 == 5 is 0 3 != 5 is 1 3> 5 is 0 3 = 5 is 0 3 <= 5 is 1
Note: Relational operators are used in decision making and loops.
4. C++ Logical Operators
Logical operators are used to check whether an expression is true or false. If the expression is true, it returns 1 whereas if the expression is false, it returns 0.
Operator | Example | Meaning |
---|---|---|
&& | expression1 && expression2 | Logical AND. True only if all the operands are true. |
|| | expression1 || expression2 | Logical OR. True if at least one of the operands is true. |
! | !expression | Logical NOT. True only if the operand is false. |
In C++, logical operators are commonly used in decision making. To further understand the logical operators, let's see the following examples,
Suppose, a = 5 b = 8 Then, (a> 3) && (b> 5) evaluates to true (a> 3) && (b 3) || (b> 5) evaluates to true (a> 3) || (b < 5) evaluates to true (a < 3) || (b 3) evaluates to false
Example 5: Logical Operators
#include using namespace std; int main() ( bool result; result = (3 != 5) && (3 < 5); // true cout << "(3 != 5) && (3 < 5) is " << result << endl; result = (3 == 5) && (3 < 5); // false cout << "(3 == 5) && (3 < 5) is " << result < 5); // false cout < 5) is " << result << endl; result = (3 != 5) || (3 < 5); // true cout << "(3 != 5) || (3 < 5) is " << result < 5); // true cout < 5) is " << result < 5); // false cout < 5) is " << result << endl; result = !(5 == 2); // true cout << "!(5 == 2) is " << result << endl; result = !(5 == 5); // false cout << "!(5 == 5) is " << result << endl; return 0; )
Output
(3 != 5) && (3 < 5) is 1 (3 == 5) && (3 5) is 0 (3 != 5) || (3 5) is 1 (3 == 5) || (3 < 5) is 0 !(5 == 2) is 1 !(5 == 5) is 0
Explanation of logical operator program
(3 != 5) && (3 < 5)
evaluates to 1 because both operands(3 != 5)
and(3 < 5)
are 1 (true).(3 == 5) && (3 < 5)
evaluates to 0 because the operand(3 == 5)
is 0 (false).(3 == 5) && (3> 5)
evaluates to 0 because both operands(3 == 5)
and(3> 5)
are 0 (false).(3 != 5) || (3 < 5)
evaluates to 1 because both operands(3 != 5)
and(3 < 5)
are 1 (true).(3 != 5) || (3> 5)
evaluates to 1 because the operand(3 != 5)
is 1 (true).(3 == 5) || (3> 5)
evaluates to 0 because both operands(3 == 5)
and(3> 5)
are 0 (false).!(5 == 2)
evaluates to 1 because the operand(5 == 2)
is 0 (false).!(5 == 5)
se evalúa como 0 porque el operando(5 == 5)
es 1 (verdadero).
5. Operadores bit a bit de C ++
En C ++, los operadores bit a bit se utilizan para realizar operaciones en bits individuales. Solo se pueden usar junto con tipos de datos char
y int
.
Operador | Descripción |
---|---|
& | Y binario |
| | OR binario |
^ | XOR binario |
~ | Complemento de uno binario |
<< | Desplazamiento binario a la izquierda |
>> | Desplazamiento binario a la derecha |
Para obtener más información, visite Operadores bit a bit de C ++.
Aparte de los operadores discutidos anteriormente, hay algunos otros operadores, tales como sizeof
, ?
, .
, &
, etc., que no se puede perfectamente clasifican en uno u otro tipo. Aprenderemos más sobre estos operadores en tutoriales posteriores.