Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Lenguaje C

Dominando los operadores en programación C: guía completa

Operadores en programación C

En este tutorial, aprenderá sobre los diferentes operadores en programación C con la ayuda de ejemplos.

Video: Operadores aritméticos en C

Un operador es un símbolo que opera sobre un valor o una variable. Por ejemplo: + es un operador para realizar adición.

C tiene una amplia gama de operadores para realizar diversas operaciones.


Operadores aritméticos en C

Un operador aritmético realiza operaciones matemáticas como adición, sustracción, multiplicación, división, etc., sobre valores numéricos (constantes y variables).

OperadorSignificado del operador
+adición o más unario
-sustracción o menos unario
*multiplicación
/división
%resto después de división (módulo)

Ejemplo 1: Operadores aritméticos

// Funcionamiento de operadores aritméticos
#include <stdio.h>
int main() {
    int a = 9, b = 4, c;
    c = a + b;
    printf("a+b = %d \n", c);
    c = a - b;
    printf("a-b = %d \n", c);
    c = a * b;
    printf("a*b = %d \n", c);
    c = a / b;
    printf("a/b = %d \n", c);
    c = a % b;
    printf("Residuo cuando a dividido por b = %d \n", c);
    return 0;
}

Salida

a+b = 13
a-b = 5
a*b = 36
a/b = 2
Residuo cuando a dividido por b=1

Los operadores +, - y * calculan adición, sustracción y multiplicación respectivamente como cabría esperar.

En cálculo normal, 9/4 = 2.25. Sin embargo, la salida es 2 en el programa.

Es porque ambas variables a y b son enteros. Por lo tanto, la salida también es un entero. El compilador descarta el término después del punto decimal y muestra la respuesta 2 en lugar de 2.25.

El operador módulo % calcula el residuo. Cuando a=9 es dividido por b=4, el residuo es 1. El operador % solo puede usarse con enteros.

Suponga a = 5.0, b = 2.0, c = 5 y d = 2. Entonces en programación C,

// Al menos uno de los operandos es un número de punto flotante
a/b = 2.5
a/d = 2.5
c/b = 2.5
// Ambos operandos son enteros
c/d = 2

Operadores de incremento y decremento en C

La programación C tiene dos operadores: incremento ++ y decremento -- para cambiar el valor de un operando (constante o variable) en 1.

El incremento ++ aumenta el valor en 1, mientras que el decremento -- lo disminuye en 1. Estos dos operadores son operadores unarios, lo que significa que solo operan sobre un solo operando.

Ejemplo 2: Operadores de incremento y decremento

// Funcionamiento de operadores de incremento y decremento
#include <stdio.h>
int main() {
    int a = 10, b = 100;
    float c = 10.5, d = 100.5;
    printf("++a = %d \n", ++a);
    printf("--b = %d \n", --b);
    printf("++c = %f \n", ++c);
    printf("--d = %f \n", --d);
    return 0;
}

Salida

++a = 11
--b = 99
++c = 11.500000
--d = 99.500000

Aquí, los operadores ++ y -- se usan como prefijos. Estos dos operadores también pueden usarse como postfijos como a++ y a--. Visite esta página para aprender más sobre cómo funcionan los operadores de incremento y decremento cuando se usan como postfijo.


Operadores de asignación en C

Un operador de asignación se usa para asignar un valor a una variable. El operador de asignación más común es =

OperadorEjemploEquivale a
=a = ba = b
+=a += ba = a+b
-=a -= ba = a-b
*=a *= ba = a*b
/=a /= ba = a/b
%=a %= ba = a%b

Ejemplo 3: Operadores de asignación

// Funcionamiento de operadores de asignación
#include <stdio.h>
int main() {
    int a = 5, c;
    c = a; // c es 5
    printf("c = %d\n", c);
    c += a; // c es 10
    printf("c = %d\n", c);
    c -= a; // c es 5
    printf("c = %d\n", c);
    c *= a; // c es 25
    printf("c = %d\n", c);
    c /= a; // c es 5
    printf("c = %d\n", c);
    c %= a; // c = 0
    printf("c = %d\n", c);
    return 0;
}

Salida

c = 5
c = 10
c = 5
c = 25
c = 5
c = 0

Operadores relacionales en C

Un operador relacional verifica la relación entre dos operandos. Si la relación es verdadera, devuelve 1; si es falsa, devuelve 0.

Los operadores relacionales se usan en toma de decisiones y bucles.

OperadorSignificadoEjemplo
==Igual a5 == 3 se evalúa a 0
>Mayor que5 > 3 se evalúa a 1
<Menor que5 < 3 se evalúa a 0
!=No igual a5 != 3 se evalúa a 1
>=Mayor o igual que5 >= 3 se evalúa a 1
<=Menor o igual que5 <= 3 se evalúa a 0

Ejemplo 4: Operadores relacionales

// Funcionamiento de operadores relacionales
#include <stdio.h>
int main() {
    int a = 5, b = 5, c = 10;
    printf("%d == %d es %d \n", a, b, a == b);
    printf("%d == %d es %d \n", a, c, a == c);
    printf("%d > %d es %d \n", a, b, a > b);
    printf("%d > %d es %d \n", a, c, a > c);
    printf("%d < %d es %d \n", a, b, a < b);
    printf("%d < %d es %d \n", a, c, a < c);
    printf("%d != %d es %d \n", a, b, a != b);
    printf("%d != %d es %d \n", a, c, a != c);
    printf("%d >= %d es %d \n", a, b, a >= b);
    printf("%d >= %d es %d \n", a, c, a >= c);
    printf("%d <= %d es %d \n", a, b, a <= b);
    printf("%d <= %d es %d \n", a, c, a <= c);
    return 0;
}

Salida

5 == 5 es 1
5 == 10 es 0
5 > 5 es 0
5 > 10 es 0
5 < 5 es 0
5 < 10 es 1
5 != 5 es 0
5 != 10 es 1
5 >= 5 es 1
5 >= 10 es 0
5 <= 5 es 1
5 <= 10 es 1

Operadores lógicos en C

Una expresión que contiene operador lógico devuelve 0 o 1 dependiendo de si la expresión resulta verdadera o falsa. Los operadores lógicos se usan comúnmente en toma de decisiones en programación C.

OperadorSignificadoEjemplo
&&AND lógico. Verdadero solo si todos los operandos son verdaderosSi c = 5 y d = 2, la expresión ((c==5) && (d>5)) es igual a 0.
||OR lógico. Verdadero solo si al menos un operando es verdaderoSi c = 5 y d = 2, la expresión ((c==5) || (d>5)) es igual a 1.
!NOT lógico. Verdadero solo si el operando es 0Si c = 5, la expresión !(c==5) es igual a 0.

Ejemplo 5: Operadores lógicos

// Funcionamiento de operadores lógicos
#include <stdio.h>
int main() {
    int a = 5, b = 5, c = 10, resultado;
    resultado = (a == b) && (c > b);
    printf("(a == b) && (c > b) es %d \n", resultado);
    resultado = (a == b) && (c < b);
    printf("(a == b) && (c < b) es %d \n", resultado);
    resultado = (a == b) || (c < b);
    printf("(a == b) || (c < b) es %d \n", resultado);
    resultado = (a != b) || (c < b);
    printf("(a != b) || (c < b) es %d \n", resultado);
    resultado = !(a != b);
    printf("!(a != b) es %d \n", resultado);
    resultado = !(a == b);
    printf("!(a == b) es %d \n", resultado);
    return 0;
}

Salida

(a == b) && (c > b) es 1
(a == b) && (c < b) es 0
(a == b) || (c < b) es 1
(a != b) || (c < b) es 0
!(a != b) es 1
!(a == b) es 0

Explicación del programa de operadores lógicos


Operadores bit a bit en C

Durante la computación, operaciones matemáticas como adición, sustracción, multiplicación, división, etc., se convierten a nivel de bits lo que hace el procesamiento más rápido y ahorra energía.

Los operadores bit a bit se usan en programación C para realizar operaciones a nivel de bit.

OperadoresSignificado de los operadores
&AND bit a bit
|OR bit a bit
^OR exclusivo bit a bit
~Complemento bit a bit
<<Desplazamiento a la izquierda
>>Desplazamiento a la derecha

Visite operadores bit a bit en C para aprender más.

Otros operadores


Operador coma

Los operadores coma se usan para vincular expresiones relacionadas. Por ejemplo:

int a, c = 5, d;

El operador sizeof

El sizeof es un operador unario que devuelve el tamaño de datos (constantes, variables, array, estructura, etc).

Ejemplo 6: Operador sizeof

#include <stdio.h>
int main() {
    int a;
    float b;
    double c;
    char d;
    printf("Tamaño de int=%lu bytes\n", sizeof(a));
    printf("Tamaño de float=%lu bytes\n", sizeof(b));
    printf("Tamaño de double=%lu bytes\n", sizeof(c));
    printf("Tamaño de char=%lu byte\n", sizeof(d));
    return 0;
}

Salida

Tamaño de int = 4 bytes
Tamaño de float = 4 bytes
Tamaño de double = 8 bytes
Tamaño de char = 1 byte

Otros operadores como el operador ternario ?:, operador de referencia &, operador de desreferencia * y operador de selección de miembro -> se discutirán en tutoriales posteriores.

Lenguaje C

  1. Fundamentos de Programación de Microprocesadores
  2. Operadores en C# – Guía completa de operadores en C#
  3. Dominando operadores bit a bit y de desplazamiento en C#: Guía completa
  4. Dominando los Espacios de Nombres en C#: Organización, Ámbito y Mejores Prácticas
  5. Dominando los Operadores en C++: Guía Completa con Ejemplos Prácticos
  6. Cómo Pasar Arrays a Funciones en C++: Guía Práctica
  7. Cuatro patrones probados para funciones definidas por el usuario en C
  8. Dominar la programación en C: Tutorial completo para principiantes
  9. Operadores en Verilog: Aritméticos y de control esenciales para síntesis
  10. Dominando operadores en Python: Guía completa
  11. Dominar Operadores en Java: Tipos, Sintaxis y Ejemplos Prácticos