> For the complete documentation index, see [llms.txt](https://skilly.gitbook.io/c/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://skilly.gitbook.io/c/teoria-4/05_operadores.md).

# Operadores

Los operadores en C son herramientas fundamentales que permiten al programador especificar qué operaciones se deben realizar en los datos. Comprender cómo y cuándo utilizar estos operadores es esencial para escribir programas eficientes y efectivos en C.

### 1. Operadores Aritméticos:

| Operador | Descripción      | Ejemplo |
| -------- | ---------------- | ------- |
| `+`      | Suma             | `x + y` |
| `-`      | Resta            | `x - y` |
| `*`      | Multiplicación   | `x * y` |
| `/`      | División         | `x / y` |
| `%`      | Módulo (residuo) | `x % y` |

### 2. Operadores Relacionales:

| Operador | Descripción       | Ejemplo  |
| -------- | ----------------- | -------- |
| `==`     | Igual a           | `x == y` |
| `!=`     | No igual a        | `x != y` |
| `<`      | Menor que         | `x < y`  |
| `>`      | Mayor que         | `x > y`  |
| `<=`     | Menor o igual que | `x <= y` |
| `>=`     | Mayor o igual que | `x >= y` |

### 3. Operadores Lógicos:

| Operador | Descripción     | Ejemplo    |
| -------- | --------------- | ---------- |
| `&&`     | Y lógico (AND)  | `x && y`   |
| `\|\|`   | O lógico (OR)   | `x \|\| y` |
| `!`      | NO lógico (NOT) | `!x`       |

### 4. Operadores de Asignación:

| Operador | Descripción         | Ejemplo  |
| -------- | ------------------- | -------- |
| `=`      | Asignación          | `x = y`  |
| `+=`     | Suma y asignación   | `x += y` |
| `-=`     | Resta y asignación  | `x -= y` |
| `*=`     | Multiplica y asigna | `x *= y` |
| `/=`     | Divide y asigna     | `x /= y` |
| `%=`     | Módulo y asignación | `x %= y` |

### 5. Operadores Unarios:

| Operador | Descripción     | Ejemplo |
| -------- | --------------- | ------- |
| `++`     | Incremento      | `x++`   |
| `--`     | Decremento      | `x--`   |
| `-`      | Cambio de signo | `-x`    |
| `&`      | Dirección de    | `&x`    |
| `*`      | Dereferencia    | `*x`    |

### 6. Operadores Bit a Bit:

| Operador | Descripción                   | Ejemplo  |
| -------- | ----------------------------- | -------- |
| `&`      | AND bit a bit                 | `x & y`  |
| `\|`     | OR bit a bit                  | `x \| y` |
| `^`      | XOR bit a bit                 | `x ^ y`  |
| `~`      | NOT bit a bit                 | `~x`     |
| `<<`     | Desplazamiento a la izquierda | `x << 2` |
| `>>`     | Desplazamiento a la derecha   | `x >> 2` |
