C Operadores
Operadores
Los operadores se utilizan para realizar operaciones sobre variables y valores.
En el siguiente ejemplo, utilizamos el + operador para sumar dos valores:
Aunque el operador + se usa a menudo para sumar dos valores, como en el ejemplo anterior; también se puede utilizar para sumar una variable y un valor, o una variable y otra variable:
Ejemplo
int sum1 = 100 + 50; // 150 (100 + 50)
int sum2 = sum1 + 250; // 400 (150 + 250)
int sum3 = sum2 + sum2; // 800 (400 + 400)
Inténtalo tú mismo »
C divide a los operadores en los siguientes grupos:
- Operadores aritméticos
- Operadores de asignación
- Operadores de comparación
- Operadores lógicos
- Operadores bit a bit
Operadores aritméticos
Los operadores aritméticos se utilizan para realizar operaciones matemáticas comunes.
| Operador | Nombre | Descripción | Ejemplo | Intentalo |
|---|---|---|---|---|
| + | Adición | Suma dos valores | x + y | Intentalo » |
| - | Resta | Resta un valor de otro | x - y | Intentalo » |
| * | Multiplicación | Multiplica dos valores | x * y | Intentalo » |
| / | División | Divide un valor entre otro | x / y | Intentalo » |
| % | Módulo | Devuelve el resto de la división | x % y | Intentalo » |
| ++ | Incremento | Aumenta el valor de una variable en 1 | ++x | Intentalo » |
| -- | Disminución | Disminuye el valor de una variable en 1 | --x | Intentalo » |
Operadores de asignación
Los operadores de asignación se utilizan para asignar valores a variables.
En el siguiente ejemplo, utilizamos el operador asignación (=) para asignar el valor 10 a una variable llamada x:
El operador asignación de suma (+=) agrega un valor a una variable:
Una lista de todos los operadores de asignación:
| Operador | Ejemplo | Igual que | Intentalo |
|---|---|---|---|
| = | x = 5 | x = 5 | Intentalo » |
| += | x += 3 | x = x + 3 | Intentalo » |
| -= | x -= 3 | x = x - 3 | Intentalo » |
| *= | x *= 3 | x = x * 3 | Intentalo » |
| /= | x /= 3 | x = x / 3 | Intentalo » |
| %= | x %= 3 | x = x % 3 | Intentalo » |
| &= | x &= 3 | x = x & 3 | Intentalo » |
| |= | x |= 3 | x = x | 3 | Intentalo » |
| ^= | x ^= 3 | x = x ^ 3 | Intentalo » |
| >>= | x >>= 3 | x = x >> 3 | Intentalo » |
| <<= | x <<= 3 | x = x << 3 | Intentalo » |
Operadores de comparación
Los operadores de comparación se utilizan para comparar dos valores (o variables). Esto es importante en programación, porque nos ayuda a encontrar respuestas y tomar decisiones.
El valor de retorno de una comparación es 1 o 0, lo que significa true (1) o false (0). Estos valores se conocen como valores booleanos y aprenderá más sobre ellos en los Booleanos y If..Else capítulo.
En el siguiente ejemplo, utilizamos el operador mayor que (>) para saber si 5 es mayor que 3:
Ejemplo
int x = 5;
int y = 3;
printf("%d", x > y); // devuelve 1 (verdadero) porque 5 es mayor que 3
Inténtalo tú mismo »
Una lista de todos los operadores de comparación:
| Operador | Nombre | Ejemplo | Intentalo |
|---|---|---|---|
| == | Igual a | x == y | Intentalo » |
| != | No es igual | x != y | Intentalo » |
| > | Mas grande que | x > y | Intentalo » |
| < | Menos que | x < y | Intentalo » |
| >= | Mayor qué o igual a | x >= y | Intentalo » |
| <= | Menos que o igual a | x <= y | Intentalo » |
Operadores lógicos
También puedes probar valores verdaderos o falsos con operadores lógicos.
Los operadores lógicos se utilizan para determinar la lógica entre variables o valores:
| Operador | Nombre | Descripción | Ejemplo | Intentalo |
|---|---|---|---|---|
| && | Lógico and | Devuelve verdadero si ambas afirmaciones son verdaderas | x < 5 && x < 10 | Intentalo » |
| || | Lógico or | Devuelve true si una de las afirmaciones es true | x < 5 || x < 4 | Intentalo » |
| ! | Lógico not | Invierte el resultado, devuelve false si el resultado es true | !(x < 5 && x < 10) | Intentalo » |
Tamaño del operador
El tamaño de la memoria (en bytes) de un tipo de datos o una variable se puede encontrar con el operador sizeof:
Ejemplo
int myInt;
float myFloat;
double myDouble;
char myChar;
printf("%lu\n", sizeof(myInt));
printf("%lu\n", sizeof(myFloat));
printf("%lu\n", sizeof(myDouble));
printf("%lu\n", sizeof(myChar));
Inténtalo tú mismo »
Tenga en cuenta que utilizamos el especificador de formato %lu para imprimir el resultado, en lugar de %d. Esto se debe a que el compilador espera que el operador sizeof devuelva un long unsigned int (%lu), en lugar de int (%d). En algunas computadoras puede funcionar con %d, pero es más seguro usarlo %lu.
