Encasillamiento en C/C++ | Descubrir La diferencia entre Encasillamiento y Conversión de tipos

Encasillamiento es una característica destacada de la programación en C/C++ que le da al programador la disposición para convertir un tipo de datos en otro tipo. Los principiantes suelen pensar erróneamente que los términos conversión de tipos y encasillamiento en C/C++se pueden usar indistintamente, no es el caso. Discutiremos sus diferencias clave para mantener nuestros conceptos claros.

Manténgase actualizado con las últimas tendencias tecnológicas
¡Únase a DataFlair en Telegram!!

el Encasillamiento en C/C++

Éste es un camino para convertir un determinado tipo de datos de una variable de otro tipo de datos en C/C++. Resulta muy útil cuando se trata de gestión de memoria. Supongamos que queremos almacenar un valor de tipo de datos int en una variable de tipo de datos long, podemos lograr esta tarea encasillando int a long. Y la buena noticia es que es tan fácil como parece.

la Sintaxis

int numero1;
float número2;

// el CUERPO
….
number2 = (flotante) number1;

Conversión de tipos en C y C++

La conversión de tipos es un concepto en el que un tipo de datos se convierte automáticamente en otro tipo sin la participación del programador. Solo lo hace el compilador si ambos tipos de datos son compatibles entre sí.

Sintaxis

int number1 = 5;
float number2;
Number2 = a; / / El valor de number2 sería 5.000

Tome un descanso por un tiempo y explore las variables en C

Conversión de tipos vs Encasillamiento

A menudo, la gente tiende a usar los términos encasillamiento y conversiones de tipos indistintamente cuando hablamos de la conversión de un tipo de datos a otro, como, de int a char.

Es importante tener en cuenta las siguientes diferencias clave:

  1. Encasillamiento se refiere a la conversión de un tipo de datos a otro por el usuario, mientras que la conversión de tipos se refiere a la conversión automática de un tipo de datos a otro.
  2. Generalmente usamos encasillamiento cuando ambos tipos de datos son incompatibles entre sí. Mientras que en la conversión de tipos, es obligatorio que ambos tipos de datos sean compatibles entre sí.
  3. Requerimos el operador de fundición «() » para encasillar en C/C++, mientras que no requerimos dicho operador en el caso de la conversión de tipos.
  4. Normalmente hacemos casting de tipos mientras escribimos el programa, mientras que hacemos conversión de tipos normalmente durante la compilación.

Tipos de conversiones de tipos en C/C++

En el lenguaje de programación C/C++, las conversiones de tipos son de dos tipos, a saber:

4.1 Conversión de tipos implícita

Es de naturaleza automática, ya que el propio compilador convierte la variable de un tipo a otro sin el empleo de ninguna otra función. Por lo tanto, no requerimos ningún operador.

Es importante entender las reglas asociadas con las conversiones de tipos implícitas. Son:

  • Los tipos de datos más pequeños se convierten en tipos de datos más grandes para evitar la pérdida de datos.
  • Cuando se realiza la operación entre el tipo de datos int y float, el valor resultante sería de tipo flotante.

¡No olvide comprobar cómo funcionan los operadores en C!

Por ejemplo, considere el siguiente segmento de código:

int x =4;float a = 14.4, b;b = a / x;

Ahora, entendamos cómo funciona esto:

En la conversión de tipos implícitos, la «x» en a / x se convierte automáticamente en el tipo de datos más grande, es decir, el tipo de datos flotante. Esto sucede para hacer que» x «sea igual a» a » en términos de su tipo de datos.

Por lo tanto, el valor de x = 4.0 y la expresión a / x sería 14.4 / 4.0 = 3.6

  • De manera similar, cuando se realiza la operación entre char/short e int, el valor resultante sería de tipo entero, ya que el tipo de datos más grande aquí es int.

Tenga en cuenta que el valor del tipo de datos char se tratará como su valor ASCII, no como su tipo de carácter original cuando se realice una operación entre el tipo de datos char y el tipo de datos int.

Por ejemplo, considere el siguiente segmento de código:

char character = 'z';int number = 8, sum;sum = character + number;

Ahora, vamos a entender cómo funciona:

Sabemos que el valor ASCII del carácter minúsculo ‘z’ es 122. Por lo tanto, el compilador convierte automáticamente el carácter del tipo de datos char en el tipo de datos entero y la expresión suma = carácter + número se convierte en igual a 122 + 8 = 130
Por lo tanto, la salida sería 130.

De esta discusión, queda bastante claro que el tipo de datos inferior se convierte en un tipo de datos superior.

El siguiente diagrama ilustra la clasificación de un tipo de datos inferior a un tipo de datos superior:

Conversión implícita de tipos C y C++

4.2 Conversión explícita de tipos

Es realizada por el programador de acuerdo a su conveniencia con la ayuda del operador de fundición.

Conclusión clave: El nuevo tipo de datos debe mencionarse claramente antes del identificador o el valor entre corchetes que se van a encasillar.

Ejemplo de encasillamiento en C

Aquí hay un programa que ilustra el uso de encasillamiento en lenguaje C:

#include <stdio.h>int main (){printf("Welcome to DataFlair tutorials!\n\n");int sum = 21, count = 5;double average;average = (double) sum / count;printf("The average value is : %f\n", average );return 0;}

el Código en la Pantalla-

Ejemplo de encasillamiento en C

Salida

Salida de éste en C

Ejemplo de encasillamiento en C++

He aquí un programa en C++ que ilustra el uso de éste:

#include <iostream>using namespace std;int main (){cout<<"Welcome to DataFlair tutorials!"<<endl<<endl;int sum = 21, count = 5;double average;average = (double) sum / count;cout<<"The average value is : "<< average <<endl;return 0;}

Código

Ejemplo de encasillamiento en C++

Salida

Salida de encasillamiento

Incorporado el Encasillamiento de las Funciones en C/C++

Hay 5 tipos básicos de incorporado convertir las funciones en C/C++:

  1. atof (): Lo usamos para convertir el tipo de datos de cadena en el tipo de datos flotante.
  2. atoi (): Lo usamos para convertir el tipo de datos de cadena en el tipo de datos int.
  3. atol (): Lo usamos para convertir el tipo de datos de cadena en el tipo de datos largo.
  4. itoa (): Lo usamos para convertir el tipo de datos int en el tipo de datos string.
  5. ltoa (): Lo usamos para convertir el tipo de datos largo en el tipo de datos de cadena.

Resumen

En este tutorial, discutimos el significado básico de conversión de tipos y encasillamiento en C/C++, que la mayoría de la gente tiende a confundir. Comprendimos que es posible convertir un tipo de datos a otro tipo, lo que lo hace aún más flexible. A partir de entonces, discutimos qué es la conversión de tipos implícita y la conversión de tipos explícita. Concluimos nuestra discusión repasando los diferentes tipos de funciones de encasillamiento incorporadas en C y C++.

Desvelar la Diferencia entre Estructuras y Uniones en C

Deja una respuesta

Tu dirección de correo electrónico no será publicada.