Operadores

En C hay tres clases de operadores: aritméticos, relacionales y lógicos, y a nivel de bits.

Aritmeticos

- resta

+ suma

* producto

/ división

% módulo (resto de la división entera)

-- decrementar

++ incrementar

 

x=10; x=10;

y=++x; y=x++;

y=11 y=10

Relacionales

En C cierto es cualquier valor distinto de cero. Falso es cero.

> mayor que

>= mayor o igual que

< menor que

<= menor o igual que

== igual

!= distinto

Lógicos

&& y

|| o

! no

 

El operador ?

Exp 1 ? Exp 2 : Exp 3

Se evalua exp1 si es cierto se evalua exp2 y toma ese valor para la expresión. Si exp1 es falso evalua exp3 tomando su valor para la expresión.

Ejemplo: x=10:

y=x>9 ? 100 : 200 --------> y = 100

 

Los operadores de punteros & y *

& devuelve la dirección de memoria del operando.

Ejemplo: m=&cont; coloca en m la dirección de memoria de la variable cont

& (la dirección de)

* devuelve el valor de la variable ubicada en la dirección que se especifica.

Ejemplo: q=*m; coloca el valor de cont en q. *(en la dirección)

 

Sizeof

Es un opeador monario que devuelve la longitud, en bytes, de la variable o del especificador de tipo al que precede.

Ejemplo: flat f;

printf ("%f",sizeof f); Mostrara 4

printf ("%d", sizeof (int)); Mostrara 2

El nombre del tipo debe ir entre paréntesis.