Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Lenguaje C

Comprenda la precedencia y asociatividad de operadores en C: Guía clara

Precedencia de operadores

La precedencia de operadores determina qué operador se ejecuta primero si hay más de un operador en una expresión.

Consideremos un ejemplo:

 int x = 5 - 17 * 6;

En C, la precedencia de * es mayor que - y =. Por lo tanto, 17 * 6 se evalúa primero. Luego se evalúa la expresión que involucra - ya que la precedencia de - es mayor que la de =.

Aquí tiene una tabla de precedencia de operadores de mayor a menor. La propiedad de asociatividad se discutirá próximamente.

Tabla de Precedencia y Asociatividad de Operadores

OperadorSignificado del operadorAsociatividad
()
[]
->
.
Llamada funcional
Referencia a elemento de array
Selección indirecta de miembro
Selección directa de miembro
Izquierda a derecha
!
~
+
-
++
--
&
*
sizeof
(type)
Negación lógica
Complemento bit a bit (1's)
Más unario
Menos unario
Incremento
Decremento
Desreferencia (Dirección)
Referencia a puntero
Devuelve el tamaño de un objeto
Conversión de tipo (cast)
Derecha a izquierda
*
/
%
Multiplicar
Dividir
Residuo
Izquierda a derecha
+
-
Suma binaria (Adición)
Resta binaria (Sustracción)
Izquierda a derecha
<<
>>
Desplazamiento a la izquierda
Desplazamiento a la derecha
Izquierda a derecha
<
<=
>
>=
Menor que
Menor o igual que
Mayor que
Mayor o igual que
Izquierda a derecha
==
!=
Igual a
No igual a
Izquierda a derecha
&AND bit a bitIzquierda a derecha
^OR exclusivo bit a bitIzquierda a derecha
|OR bit a bitIzquierda a derecha
&&AND lógicoIzquierda a derecha
||OR lógicoIzquierda a derecha
?:Operador condicionalDerecha a izquierda
=
*=
/=
%=
+=
-=
&=
^=
|=
<<=
>>=
Asignación simple
Asignar producto
Asignar cociente
Asignar residuo
Asignar suma
Asignar diferencia
Asignar AND bit a bit
Asignar XOR bit a bit
Asignar OR bit a bit
Asignar desplazamiento izquierda
Asignar desplazamiento derecha
Derecha a izquierda
,Separador de expresionesIzquierda a derecha

Asociatividad de operadores

La asociatividad de los operadores determina la dirección en la que se evalúa una expresión. Por ejemplo,

 b = a;

Aquí, el valor de a se asigna a b, y no al revés. Es porque la asociatividad del operador = es de derecha a izquierda.

Además, si hay dos operadores de la misma precedencia (prioridad), la asociatividad determina la dirección en la que se ejecutan.

Consideremos un ejemplo:

 1 == 2 != 3

Aquí, los operadores == y != tienen la misma precedencia. Y su asociatividad es de izquierda a derecha. Por lo tanto, 1 == 2 se ejecuta primero.

La expresión anterior es equivalente a:

 (1 == 2) != 3

Nota: Si una sentencia tiene múltiples operadores, puede usar paréntesis () para hacer el código más legible.

Tabla de contenidos

Lenguaje C

  1. Fundamentos de C#: Sintaxis Básica y Conceptos de POO
  2. Dominando Arrays Multidimensionales en C++: Declaración, Inicialización y Recorrido
  3. Dominando enums en C: Definición, declaración y operaciones de banderas
  4. Dominando std::map en C++: Guía completa con ejemplos de código
  5. Dominando la Sobrecarga en C++: Funciones y Operadores Explicados
  6. Métodos en C#: Definición, llamada y uso de funciones
  7. Domine Entity Framework: 50 preguntas clave de entrevista y respuestas (2026)
  8. Dominando la Recursión en C++: Conceptos, Ejemplos y Mejores Prácticas
  9. Entendiendo las reglas de alcance en C: Variables locales, globales y formales
  10. Dominando la Sentencia break en C++
  11. Cadenas en C hechas fáciles: Declaración, entrada, salida y funciones de biblioteca