Operatores en C++Tipos con ejemplos
⚡ Resumen inteligente
Operatores en C++ Los operadores son símbolos que realizan operaciones con operandos, desde aritméticas y de comparación hasta lógicas, operaciones bit a bit y asignaciones. Este recurso explica cada categoría de operador con ejemplos de programas ejecutables, su salida y las reglas de precedencia que determinan el orden de evaluación.
¿Qué son Operatores?
Un operador es un símbolo utilizado para realizar operaciones sobre operandos. Un operador opera sobre operandos, y las operaciones pueden ser matemáticas o lógicas. Hay diferentes tipos de operadores en C++ para realizar diferentes operaciones.
Consideremos la siguiente operación:
a = x + y;
En la declaración anterior, x e y son los operandos mientras que + es un operador de suma. C++ El compilador encuentra la declaración anterior, agregará xey y almacenará el resultado en la variable a.
Tipos de Operatores en C++
Hay principalmente 6 tipos diferentes de operadores en C++:
- Aritmética Operatoros
- Relacional Operatoros
- lógico Operatoros
- Bitwise Operatoros
- Asignación Operatoros
- Otra Operatoros
Comencemos con los operadores aritméticos, la categoría más utilizada.
Aritmética Operatoros
Son los tipos de operadores que se utilizan para realizar operaciones matemáticas/aritméticas. Entre ellos se incluyen:
| Operator | Mareas Ideales para Lecciones |
|---|---|
| + operador de adición | Agrega dos operandos. |
| - Entracoperador de ción | Subtracts 2nd operando de 1st operando |
| * operador de multiplicación | Multiplica 2 operandos. |
| / operador de división | Divide numerador por denominador. |
| Operador de módulo % | Devuelve el resto después de la división. |
| ++ operador de incremento | Aumenta un valor entero en 1. |
| — operador de decremento | Disminuye un valor entero en 1. |
Por ejemplo:
#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; }
Salida:
Aquí hay una captura de pantalla del código:
Code Explicación:
- Incluyendo el archivo de encabezado iostream en nuestro código. Nos permitirá leer y escribir en la consola.
- Incluyendo el espacio de nombres estándar para usar sus clases y funciones sin llamarlo.
- Llamada a la función main() dentro de la cual se debe agregar la lógica del programa. La llave { marca el inicio del cuerpo de la función main().
- Declarar una variable entera a e inicializarla en 11.
- Declarar una variable entera b e inicializarla en 5.
- Declarar una variable entera c.
- Imprimir el valor de la operación a+b junto con otro texto en la consola.
- Imprimir el valor de la operación ab junto con otro texto en la consola.
- Imprimir el valor de la operación a*b junto con otro texto en la consola.
- Imprimir el valor de la operación a/b junto con otro texto en la consola.
- Imprimir el valor de la operación a%b junto con otro texto en la consola.
- Imprimir el valor de la operación a++ junto con otro texto en la consola.
- Imprimir el valor de la operación a– junto con otro texto en la consola.
- La función main() debería devolver un valor si el programa funciona bien.
- Fin del cuerpo de la función main().
Relacional Operatoros
Estos tipos de operadores realizan comparaciones entre operandos. Por ejemplo, es posible que necesite saber qué operando es mayor que el otro o menor que el otro. Entre ellos se incluyen:
| Operator | Mareas Ideales para Lecciones |
|---|---|
| == igual al operador | Comprueba la igualdad de dos valores de operandos. |
| != no es igual al operador | Comprueba la desigualdad de dos valores operandos. |
| > operador mayor que | Comprueba si el valor del operando izquierdo es mayor que el valor del operando derecho. |
| < operador menor que | Comprueba si el valor del operando izquierdo es menor que el valor del operando derecho. |
| >= operador mayor o igual | Comprueba si el valor del operando izquierdo es mayor o igual que el valor del operando derecho. |
| <= operador menor o igual que | Comprueba si el valor del operando izquierdo es menor o igual que el valor del operando derecho. |
Por ejemplo:
#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; }
Salida:
Aquí hay una captura de pantalla del código:
Code Explicación:
- Incluyendo el archivo de encabezado iostream en nuestro código. Nos permitirá leer y escribir en la consola.
- Incluyendo el espacio de nombres estándar para usar sus clases y funciones sin llamarlo.
- Llamar a la función main() dentro de la cual se debe agregar la lógica del programa.
- Declarar una variable entera a e inicializarla en 11.
- Declarar una variable entera b e inicializarla en 5.
- Imprimiendo un texto en la consola indicando los valores de las variables a y b.
- Comprobar si a es igual a b utilizando una sentencia condicional (if).
- Texto que se imprimirá en la consola si la operación a==b es verdadera.
- La parte else de la instrucción if anterior, que indica qué hacer si a==b es falsa.
- Texto que se imprimirá en la consola si la operación a==b es falsa.
- Comprobar si a es menor que b usando una sentencia if.
- Texto que se imprimirá en la consola si la operación es
- La otra parte para cuando un
- Texto que se imprimirá en la consola si la operación es
- Comprobar si a es mayor que b usando una sentencia if.
- Texto que se imprimirá en la consola si la operación a>b es verdadera.
- La parte "else" para cuando a>b es falso.
- Texto que se imprimirá en la consola si la operación a>b es falsa.
- La función main() debería devolver un valor si el programa funciona bien.
- Fin del cuerpo de la función main().
lógico Operatoros
El operadores logicos Combinan dos o más restricciones/condiciones. Los operadores lógicos también complementan la evaluación de la condición original en consideración. Estos incluyen:
| Operator | Mareas Ideales para Lecciones |
|---|---|
| && operador lógico AND | La condición es verdadera si ambos operandos son distintos de cero. |
| || operador lógico OR | La condición es verdadera si uno de los operandos es distinto de cero. |
| ! operador lógico NOT | Invierte el estado lógico del operando. Si el operando es verdadero, el operador ! lo convierte en falso. |
Por ejemplo:
#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; }
Salida:
Aquí hay una captura de pantalla del código:
Code Explicación:
- Incluyendo el archivo de encabezado iostream en nuestro código. Nos permitirá leer y escribir en la consola.
- Incluyendo el espacio de nombres estándar para usar sus clases y funciones sin llamarlo.
- Llamar a la función main() dentro de la cual se debe agregar la lógica del programa.
- El { marca el inicio del cuerpo de la función main().
- Declarar 4 variables enteras a, b, c y d y asignarles valores diferentes.
- Utilizando el operador && (AND) dentro de la instrucción if. Este operador combina dos condiciones. La primera condición es falsa y la segunda es verdadera, por lo que false&&true es falso; el resultado de if es falso.
- Texto que se imprimirá en la consola si la condición anterior es verdadera. Esto no se ejecutará.
- La parte que se ejecutará si la instrucción if anterior es falsa.
- Texto que se imprimirá en la consola si la declaración if es falsa. Esto será ejecutado.
- Usando el operador || (OR) dentro de una instrucción if. La primera condición es falsa y la segunda es verdadera, por lo que falso||verdadero es verdadero; el resultado de if es verdadero.
- Texto que se imprimirá en la consola si la condición anterior es verdadera. Esto se ejecutará.
- La parte que se ejecutará si la instrucción if anterior es falsa.
- Texto que se imprimirá en la consola si la declaración if es falsa. Esto no se ejecutará.
- Comprobando si el valor de la variable b es 0.
- Texto que se imprimirá en la consola si la condición anterior es verdadera. Esto no se ejecutará.
- La parte que se ejecutará si la instrucción if anterior es falsa.
- Texto que se imprimirá en la consola si la declaración if es falsa. Esto será ejecutado.
- La función main() debería devolver un valor si el programa funciona bien.
- Fin del cuerpo de la función main().
Bitwise Operatoros
Operadores bit a bit Realizar operaciones a nivel de bits sobre operandos. Primero, los operandos se convierten a nivel de bits, luego se realizan las operaciones. Cuando se realizan operaciones aritméticas como la suma y la resta,tracLas operaciones se realizan a nivel de bits, lo que permite obtener resultados más rápidamente. Estas incluyen:
| Operator | Mareas Ideales para Lecciones |
|---|---|
| & (AND bit a bit) | Recibe dos números (operandos) y realiza una operación AND en cada bit de ambos. Si ambos son 1, la operación AND devuelve 1; de lo contrario, devuelve 0. |
| | (OR bit a bit) | Recibe dos números (operandos) y realiza una operación OR entre cada bit de ambos. Devuelve 1 si uno de los bits es 1. |
| ^ (XOR bit a bit) | Recibe dos números (operandos) y realiza una operación XOR en cada bit de ambos números. Devuelve 1 si ambos bits son diferentes. |
| << (desplazamiento a la izquierda) | Toma dos números y luego desplaza a la izquierda los bits del primer operando. El segundo operando determina el número total de posiciones a desplazar. |
| >> (desplazamiento a la derecha) | Toma dos números y luego desplaza a la derecha los bits del primer operando. El segundo operando determina la cantidad de posiciones que se deben desplazar. |
| ~ (NOT bit a bit) | Toma un número y luego invierte todos sus 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; }
Salida:
Aquí hay una captura de pantalla del código:
Code Explicación:
- Incluyendo el archivo de encabezado iostream en nuestro código. Nos permitirá leer y escribir en la consola.
- Incluyendo el espacio de nombres estándar para usar sus clases y funciones sin llamarlo.
- Llamar a la función main() dentro de la cual se debe agregar la lógica del programa.
- Declarar una variable entera sin signo p y asignarle el valor 60, que es 0011 1100 en binario.
- Declarar una variable entera sin signo q y asignarle el valor 13, que es 0000 1101 en binario.
- Declarar una variable entera z e inicializarla a 0.
- Realizar la operación bit a bit & (AND) en las variables p y q y almacenar el resultado en la variable z.
- Imprimir el resultado de la operación anterior en la consola junto con otro texto.
- Realizar la operación bit a bit | (OR) en las variables p y q y almacenar el resultado en la variable z.
- Imprimir el resultado de la operación anterior en la consola junto con otro texto.
- Realizar la operación bit a bit (XOR) en las variables p y q y almacenar el resultado en la variable z.
- Imprimir el resultado de la operación anterior en la consola junto con otro texto.
- Realizar la operación bit a bit ~ (NOT) en la variable p y almacenar el resultado en la variable z.
- Imprimir el resultado de la operación anterior en la consola junto con otro texto.
- Realizar la operación de desplazamiento a la izquierda en la variable p y almacenar el resultado en la variable z.
- Imprimir el resultado de la operación anterior en la consola junto con otro texto.
- Realizar la operación de desplazamiento a la derecha en la variable p y almacenar el resultado en la variable z.
- Imprimir el resultado de la operación anterior en la consola junto con otro texto.
- La función main() debería devolver un valor si el programa funciona bien.
- Fin del cuerpo de la función main().
Asignación Operatoros
Operadores de Asignación Asignar valores a variables. El operando/variable se agrega al lado izquierdo del operador, mientras que el valor se agrega al lado derecho. La variable y el valor deben pertenecer al mismo tipo de datos, de lo contrario, C++ El compilador generará un error.
Por ejemplo:
x = 5;
En el ejemplo anterior, x es la variable/operando, = es el operador de asignación, mientras que 5 es el valor. Aquí están los operadores de asignación más populares en C++:
| Operator | Mareas Ideales para Lecciones |
|---|---|
| = (operador de asignación simple) | Asigna el valor de la derecha a la variable de la izquierda. |
| += (Agregar operador de asignación AND) | Agrega el valor del operando derecho al operando izquierdo y luego asigna el resultado a la variable de la izquierda. |
| -= (Subtracoperador de asignación AND) | Subtractoma el valor del operando derecho del operando izquierdo y luego asigna el resultado a la variable de la izquierda. |
| *= (Operador de asignación de multiplicación AND) | Multiplica el valor del operando izquierdo con el operando derecho y luego asigna el resultado a la variable de la izquierda. |
| /= (Operador de división y asignación) | Divide el valor del operando izquierdo por el operando derecho y luego asigna el resultado a la variable de la izquierda. |
Por ejemplo:
#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; }
Salida:
Aquí hay una captura de pantalla del código:
Code Explicación:
- Incluyendo el archivo de encabezado iostream en nuestro código. Nos permitirá leer y escribir en la consola.
- Incluyendo el espacio de nombres estándar para usar sus clases y funciones sin llamarlo.
- Llamar a la función main() dentro de la cual se debe agregar la lógica del programa.
- El { marca el inicio del cuerpo de la función main().
- Declarar una variable entera x y asignarle el valor 5.
- Imprimir el valor de la variable x junto con otro texto en la consola. El carácter \n representa un salto de línea.
- Sumar 5 al valor de la variable x y asignar el resultado a la variable x.
- Imprimir el valor de la variable x en la consola junto con otro texto.
- Subtracrestar 5 del valor de x y asignar el resultado a la variable x.
- Imprimir el valor de la variable x en la consola junto con otro texto.
- Multiplicar el valor de la variable x por 5 y asignar el resultado a la variable x.
- Imprimir el valor de la variable x en la consola junto con otro texto.
- Dividir el valor de la variable x entre 5 y asignar el resultado a la variable x.
- Imprimir el valor de la variable x en la consola junto con otro texto.
- La función main() debería devolver un valor si el programa funciona bien.
- Fin del cuerpo de la función main().
Otra Operatoros
Otra Operatoros incluir el tamaño del operador, coma Operator, condicional Operator, y Operators Precedencia. Analicemos los demás operadores compatibles con C++:
operador sizeof
Este operador determina el tamaño de una variable. Utilice el operador sizeof para determinar el tamaño de un tipo de dato.
Por ejemplo:
#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; }
Salida:
Aquí hay una captura de pantalla del código:
Code Explicación:
- Incluyendo el archivo de encabezado iostream en nuestro código. Nos permitirá leer y escribir en la consola.
- Incluyendo el espacio de nombres estándar para usar sus clases y funciones sin llamarlo.
- Llamar a la función main() dentro de la cual se debe agregar la lógica del programa.
- Determinar el tamaño del tipo de datos entero utilizando el operador sizeof e imprimirlo junto con otro texto en la consola.
- Determinar el tamaño del tipo de datos de caracteres utilizando el operador sizeof e imprimirlo junto con otro texto en la consola.
- Determinar el tamaño del tipo de datos float utilizando el operador sizeof e imprimirlo junto con otro texto en la consola.
- Determinar el tamaño del tipo de datos double utilizando el operador sizeof e imprimirlo junto con otro texto en la consola.
- La función main() debería devolver un valor si el programa funciona bien.
- Fin del cuerpo de la función main().
Coma Operator
El operador de coma (,) activa la ejecución de una secuencia de operaciones. Expresa el primer operando y descarta el resultado. A continuación, evalúa el segundo operando y devuelve el valor y el tipo.
#include <iostream> using namespace std; int main() { int x, y; y = 100; x = (y++, y + 10, 99 + y); cout << x; return 0; }
Salida:
Aquí hay una captura de pantalla del código:
Code Explicación:
- Incluyendo el archivo de encabezado iostream en nuestro código. Nos permitirá leer y escribir en la consola.
- Incluyendo el espacio de nombres estándar para usar sus clases y funciones sin llamarlo.
- Llamar a la función main() dentro de la cual se debe agregar la lógica del programa.
- Declarar dos variables enteras x e y.
- Asignando a la variable y un valor de 100.
- Utilizando el operador coma, se comienza con y en 100, luego se incrementa a 101 (y++). A continuación, se suma 10 a y. Finalmente, y, que sigue en 101, se suma a 99, dando como resultado 200. Ahora x es 200.
- Imprimir el valor de la variable x en la consola.
- La función main() debería devolver un valor si el programa funciona bien.
- Fin del cuerpo de la función main().
Condicional Operator
Este operador evalúa una condición y actúa en función del resultado de la evaluación.
Sintaxis:
Condition ? Expression2 : Expression3;
parámetros:
- La Condición es la condición que se va a evaluar.
- La expresión2 es la expresión que se ejecutará si la condición es verdadera.
- La expresión 3 es la expresión que se ejecutará si la condición es falsa.
Por ejemplo:
#include <iostream> using namespace std; int main() { int a = 1, b; b = (a < 10) ? 2 : 5; cout << "value of b: " << b << endl; return 0; }
Salida:
Aquí hay una captura de pantalla del código:
Code Explicación:
- Incluyendo el archivo de encabezado iostream en nuestro código. Nos permitirá leer y escribir en la consola.
- Incluyendo el espacio de nombres estándar para usar sus clases y funciones sin llamarlo.
- Llamar a la función main() dentro de la cual se debe agregar la lógica del programa.
- Declarando dos variables enteras a y B. A la variable a se le ha asignado el valor 1.
- Asignar un valor a la variable b. Si la variable a es menor que 10, a b se le asignará el valor 2; de lo contrario, a b se le asignará el valor 5.
- Imprimir el valor de la variable b en la consola junto con otro texto.
- La función main() debería devolver un valor si el programa funciona bien.
- Fin del cuerpo de la función main().
Operaprecedencia de tors
Una misma operación puede tener más de un operador. En ese caso, la precedencia de los operadores determina el que se evalúa primero.
La siguiente lista muestra la precedencia de los operadores en C++, con precedencia decreciente de izquierda a derecha:
(), [], *, /, %, +/-, <<, >>, ==, !=, ^, |, &&, ||, ?:, =, +=, -=, *=, /=














