cantonada cantonada

Operadors en C i precedència

 

Vegem els operadors més importants en C i la seva precedència...

Aquesta és la llista d'operadors en C. Com més amunt de la llista siguis significa que tenen més precedència.

Dintre de cada classe, els operadors tenen associativitat d'esquerra a dreta excepte les classes marcades amb ## que tenen associativitat de dreta a esquerra.

L'associativitat ens indica quin operador té més precedència dintre d'una classe.

Per exemple, en la sentència: a+b*4+c*3

El primer que es va a executar són els *. Atès que la associativitat és d'esquerra a dreta, primer executarem b*4 i després c*3

En la sentència i=j=a+b Primer executarem a+b i després les dues assignacions. Atès que les assignacions tenen associativitat de dreta a esquerra, primer executarem j=a+b i després i=j.

És a dir, copiem a+b tant en i com en j. Això es veu normalment en els for's per a inicialitzar dues variables a 0 de cop for(i=j=0; ....

 

Categoria

Operador

Què és o què fa

1. La més alta

()

Parèntesi

 

[]%

Accés a vectors

 

->

Accés amb punters a camps d'estructures

 

.

Accés sense punters a camps d'estructures

2. Unaris

!

Negació lògica

 

Negació bit a bit

 

+

Positiu

 

-

Negatiu (oposat)

 

++

Preincrement o postincrement

 

--

Predecrement o postdecrement

 

&

Adreça

 

*

Indirecció

 

sizeof

grandària d'operant

3. Multiplicatius

*

Multiplicació

 

/

Divisió

 

%

Resta (mòdul)

4. Additius

+

Suma

 

-

Resta

5. Rotació

<<

Rotació a l'esquerra

 

>>

Rotació a la dreta

6. Relacional

<

Menor que

 

<=

Menor o igual que

 

>

Major que

 

>=

Major o igual que

7. Igualtat

==

Igual que

&

I bit a bit

 

9.

^

O exclusiva bit a bit

10.

|

O bit a bit

11.

&&

I lògic

12.

||

O lògic

13. Condicional

?:

(a ? x : i significa "si a llavors x, sinó i")

14. Assignació

=

Assignació simple

 

*=

Multiplica i assigna

 

/=

Divideix i assigna

 

%=

Resta i assigna

 

+=

Suma i assigna

 

-=

Resta i assigna

 

&=

I bit a bit i assigna

 

^=

O exclusiva bit a bit i assigna

 

|=

O bit a bit i assigna

 

<<=

Rota esquerra i assigna

 

>>=

Rota dreta i assigna

15. Coma

,

Avalua

Anar a Pàgina Principal

Imprimeix la web / Enviar a:
Google