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

Comprensión de la precedencia y asociatividad de los operadores C:una guía clara

Precedencia de operadores

La precedencia de los 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. Entonces la expresión que involucra - se evalúa como la precedencia de - es mayor que el de = .

Aquí hay una tabla de precedencia de operadores de mayor a menor. La propiedad de la asociatividad se discutirá en breve.

Tabla de precedencia y asociatividad de operadores

Operador Significado de operador Asociatividad ()
[]
->
.Llamada funcional
Referencia de elemento de matriz
Selección indirecta de miembros
Selección directa de miembros¡De izquierda a derecha!
~
+
-
++
--
&
*
tamaño de
(tipo) Negación lógica
Complemento bit a bit (1's)
más unario
Unary minus
incremento
Decremento
Desreferencia (Dirección)
Referencia de puntero
Devuelve el tamaño de un objeto.
Encasillado (conversión)De derecha a izquierda*
/
%Multiplicar
dividir
RestoDe izquierda a derecha+
-Binario más (Suma)
Menos binario(resta)De izquierda a derecha<<
>>Desplazamiento a la izquierda
Desplazamiento a la derechaDe izquierda a derecha<
<=
>
>=Menos de
Menor o igual
mayor que
Mayor o igual queDe izquierda a derecha==
!=Igual a
No igual aDe izquierda a derecha&Bit a derecha Y De izquierda a derecha^Exclusivo bit a bit O De izquierda a derecha|Bit a derecha O De izquierda a derecha&&Lógico ANDDe izquierda a derecha||Lógico O ¿De izquierda a derecha?:Operador condicionalDe derecha a izquierda=
*=
/=
%=
+=
-=
&=
^=
|=
<<=
>>=Asignación sencilla
Asignar producto
Asignar cociente
Asignar resto
Asignar suma
Asignar diferencia
Asignar bit a bit Y
Asignar XOR bit a bit
Asignar bit a bit O
Asignar desplazamiento a la izquierda
Asignar desplazamiento a la derechaDe derecha a izquierda,Separador de expresionesDe izquierda 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 están presentes 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 equivale a:

(1 == 2) != 3

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

Tabla de contenidos


Lenguaje C

  1. Operadores de C#
  2. Tutorial de matriz de C#:crear, declarar, inicializar
  3. C - Configuración del entorno
  4. Descripción general de C++
  5. Cree, pruebe e implemente con .NET:la plataforma de desarrollo multiplataforma, de código abierto y gratuita
  6. C# - Atributos
  7. C - Sintaxis básica
  8. Funciones virtuales de C++
  9. C - E/S de archivo
  10. Sobrecarga de operadores de C++
  11. Matrices C