Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Linguagem C

Compreendendo a precedência e associatividade do operador C:um guia claro

Precedência de operadores


A precedência dos operadores determina qual operador será executado primeiro se houver mais de um operador em uma expressão.

Consideremos um exemplo:
09 
Em C, a precedência de 06 é maior que 19 e 21 . Portanto, 38 é avaliado primeiro. Então a expressão envolvendo 47 é avaliado como a precedência de 55 é maior que 62 .

Aqui está uma tabela de precedência de operadores de maior para menor. A propriedade da associatividade será discutido em breve.

Tabela de precedência e associatividade de operadores

Operador Significado do operador Associatividade ()
[]
->
.Chamada funcional
Referência de elemento de matriz
Seleção indireta de membros
Seleção direta de membrosDa esquerda para a direita!
~
+
-
++
--
&
*
tamanho de
(tipo)Negação lógica
Complemento bit a bit (1)
Unário mais
Unário menos
Incremento
Diminuir
Desreferência (Endereço)
Referência de ponteiro
Retorna o tamanho de um objeto
Typecast (conversão)Da direita para a esquerda*
/
% Multiplicar
Dividir
RestanteDa esquerda para a direita+
-Binário mais (Adição)
Binário menos (subtração) Da esquerda para a direita<<
>>Deslocamento para a esquerda
Deslocamento para a direitaDa esquerda para a direita<
<=
>
>=Menos que
Menor ou igual
Maior que
Maior ou igualDa esquerda para a direita==
!=Igual a
Diferente deLeft to right&Bitwise ANDLeft to right^Bitwise exclusivo ORLeft to right|Bitwise ORLeft to right&&Logical ANDLeft to right||Logical ORLeft to right?:Operador CondicionalRight to left=
*=
/=
%=
+=
-=
&=
^=
|=
<<=
>>=Tarefa simples
Atribuir produto
Atribuir quociente
Atribuir restante
Atribuir soma
Atribuir diferença
Atribuir AND bit a bit
Atribuir XOR bit a bit
Atribuir OR bit a bit
Atribuir deslocamento para a esquerda
Atribuir shift da direita, da direita para a esquerda, separador de expressões da esquerda para a direita

Associatividade dos Operadores


A associatividade dos operadores determina a direção na qual uma expressão é avaliada. Por exemplo,
18 
Aqui, o valor de a é atribuído a b, e não o contrário. É porque a associatividade do 78 operador é da direita para a esquerda.

Além disso, se dois operadores com a mesma precedência (prioridade) estiverem presentes, a associatividade determina a direção na qual eles são executados.

Consideremos um exemplo:
26 
Aqui, operadores 82 e 94 têm a mesma precedência. E a associatividade deles é da esquerda para a direita. Portanto, 107 é executado primeiro.

A expressão acima é equivalente a:
30 
Nota: Se uma instrução tiver vários operadores, você poderá usar parênteses 114 para tornar o código mais legível.

Índice


Linguagem C

  1. C Palavras-chave e Identificadores
  2. C - Operadores
  3. Função free() na biblioteca C:Como usar? Aprenda com o Exemplo
  4. C# - Indexadores
  5. C para Loop
  6. C Funções da Biblioteca Padrão
  7. C - Entrada e Saída
  8. C Estrutura e Função
  9. Dominando ponteiros de caracteres e uso de funções em C
  10. Ponteiros C++ com exemplos