Anuncios

Bienvenidos sean a este post, hoy hablaremos sobre los operadores.

Anuncios

Los operadores son los encargados de realizar las operaciones en nuestros codigos, estas operaciones van desde simples calculos matematicos hasta comparaciones, en nuestra libreria basica que estuvimos utilizando hasta ahora tenemos los siguientes operadores matematicos:

OperadorDescripcion
+Se usa para sumar dos valores
Se usa para restar dos valores
*Es para la multiplicacion entre dos valores
/Este es para la division entre dos valores
%Nos devuelve el resto de la division de dos valores
Anuncios

Si recuerdan cuando vimos constantes en este post utilizamos un par de estos operadores, con esto podremos realizar los calculos pero el lenguaje tambien nos permite realizar otra operacion que se denomina casting, esta explicada de una forma muy simple es un conversor de tipos, para entenderlo mejor veamos las sigueintes sintaxis:

int a = 10;
printf("%f\n", (float) a);
Anuncios

Cuando hablamos de casting es simplemente eso, pasar entre parentesis el tipo al cual deseamos convertir, esto funciona muy bien entre numeros, es como lo veran mas usualmente, pasemos al siguiente tema.

Anuncios
Nota:
Esta tipo de accion se la denomina mas coloquialmente como "casteo".
Anuncios

Otro tipos de operadores que poseemos son los logicos, estos nos sirven para obtener un valor booleano en la comparacion entre dos elementos:

OperadorDescripcion
&&Es el operador AND logico y devuelve true si ambos valores son true
||Es el operador OR logico y devuelve true si alguno de los valores lo es
!Inversor logico
Anuncios
Anuncios

Este tipo de operadores nos seran muy utiles cuando veamos condicionales, dado que podemos pasar dos elementos para compararlos entre ellos y dependiendo el operador que utilicemos nos concedera la ejecucion del mismo, el inversor logico es un operador simple que invierte el estado del elemento, si es true lo convierte a false y viceversa, tambien operadores de bit, estos dependiendo del operador nos cambian los bits en un sentido u otro, si bien antiguamente era mas util actualmente no tiene mucho sentido pero no quita que puedan ser utiles veamos los disponibles:

  • &, hace un pase de bits por medio de un AND, es decir devuelve 1 si ambos elementos son 1
  • |, el pase de bits es hecho por medio de un OR, en este caso devuelve 1 si uno de los elementos es 1
  • ^, el pase de bits es hecho con XOR, aqui devuelve 1 si ninguno de los elementos es 1
  • <<, desplaza cada bit a la izquierda, hacia la posicion de bit mas grande
  • >>, desplaza cada bit a la derecha, hacia la posicion de bit mas pequeña
  • ~, se denomina operador complementario y cambia el bit a su opuesto
Anuncios

Otro operador que tenemos son los complementarios, esto nos permiten resumir algunas operaciones, por ejemplo tenemos la siguiente operacion:

contar = contar + 10;
Anuncios

Esto nos incrementara el valor de la variable contar en 10 y lo podemos reemplazar de esta forma:

contar += 10;
Anuncios

Pasemos a ver todos los operadores de este estilo que tenemos disponibles:

OperadorDescripcion
+=Incrementa el valor de la variable con otro valor
-=Idem al anterior pero le resta al valor
*=Multiplica el valor contenido por el nuevo indicado
/=Lo mismo pero para division
%=Lo mismo pero asigna el resto obtenido de la operacion
<<=Le asigna el resultado de la operacion de pasaje a la izquierda
>>=Le asigna el resultado de la operacion de pasaje a la derecha
|=Asigna el resultado de la operacion OR
&=Asigna el resultado de la operacion AND
^=Asigna el resultado de la operacion XOR
Anuncios

Por ultimo tenemos dos operadores que se los denomina incremental y decremental, estos solamente incrementan o decrementan en uno a una variable:

  • ++, es el encargado de incrementar la variable
  • –, es el encargado de decrementar la variable
Anuncios

Para entender el concepto vamos a realizar un ejemplo simple donde pondremos varios de estos operadores en accion, para ello deben crear un archivo con el nombre de ops.c y le agregaremos el siguiente codigo:

ops.c

#include <stdio.h>

int main()
{
	int a = 10, b=10, c;

	c = a + b;
	printf("c = a + b => %i\n", c);

	c += a;
	printf("c += a => %i\n", c);

	c++;
	printf("c++ => %i\n", c);

	return 0;
}
Anuncios
Anuncios

En este codigo aplicaremos varios de los operadores, pero primero definiremos dos variables con valores (a y b)y luego declaramos una (c), para nuestro siguiente paso procedemos a asignar la suma de a y b a la variable c, lo siguiente sera mostrar el resultado de esta operacion, en todos los casos mostraremos a cual operacion nos referimos y en todos los casos usamos el operador para mostrar un valor entero, la siguiente operacion la haremos por medio del operador complementario, para nuevamente mostrarlo y por ultimo usamos el operador incremental para mosttrarlo nuevamente, compilemos y veamos como es su salida:

tinchicus@dbn001vrt:~/lenguajes/C$ ./prog/ops 
c = a + b => 20
c += a => 30
c++ => 31
tinchicus@dbn001vrt:~/lenguajes/C$
Anuncios

En resumen, estos son los operadores basicos que dispondremos con nuestra libreria basica, para que sirven, como podemos utilizarla y un ejemplo para ver algunos en accion, espero les sea de utilidad sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Anuncios

Donación

Es para mantenimento del sitio, gracias!

$1.50

Anuncio publicitario