Precedencia de los operadores

 La prioridad de los operadores en C++ determina el orden en que se evalúan las operaciones en una expresión. Esto es importante porque puede afectar el resultado de la expresión.

En C++, la prioridad de los operadores se presenta en una tabla de mayor a menor precedencia. Dentro de un mismo nivel de precedencia, la asociatividad determina el orden de evaluación de izquierda a derecha o de derecha a izquierda.

Tabla de precedencia de operadores en C++:

NivelOperadoresAsociatividad
1Paréntesis (())Izquierda a derecha
2Potenciación (^)Derecha a izquierda
3Multiplicación (*), División (/), Módulo (%)Izquierda a derecha
4Suma (+), Resta (-)Izquierda a derecha
5Menor que (<), Mayor que (>), Menor o igual que (<=), Mayor o igual que (>=)Izquierda a derecha
6Igualdad (==), Desigualdad (!=)Izquierda a derecha
7And lógico (&&)Izquierda a derecha
8Or lógico ( || )
9Asignación (=, +=, -=, *=, /=, %=, &=, `=,^=,<<=,>>=`)
10Operador condicional ternario (?:)Derecha a izquierda
11Precedencia de tipo (por ejemplo, sizeof, . para punteros y miembros de la clase)Izquierda a derecha
12Coma (,)Izquierda a derecha

Ejemplo de uso de la tabla de precedencia:

En la siguiente expresión:

C++
a + b * c / d - e ^ f

Se evaluará primero la potencia (f ^ e), luego la multiplicación (b * c), la división ((b * c) / d), la suma (a + (b * c / d)), y finalmente la resta ((a + (b * c / d)) - e).



Comentarios

Entradas más populares de este blog

Generación de números aleatorios

Paso de parámetros en funciones

STL de C++