"En Typecasting, el compilador cambia el tipo de datos de nuestras variables por sí solo en función de cómo queremos que el programa se ejecute. Las operaciones C solo se pueden realizar con tipos de datos similares. Si los tipos de datos se vuelven diferentes, entonces, en ese caso, se producirá un diseño de tipo.
En el lenguaje C, definimos variables o constantes con tipos de datos específicos, si después de la declaración de nuestras variables, estamos escribiendo una expresión o realizando alguna operación, y podemos obtener la salida de él en un tipo diferente. Entonces, para mantener el tipo, necesitamos un examen para ese propósito. Supongamos que estamos tomando dos enteros y dividiéndolos entre sí; El resultado puede estar en un tipo de datos doble debido al valor de los puntos. Entonces, para resolver el problema, utilizaremos el concepto de Tipegum.
Hay dos tipos de typecasting, uno está implícito y el otro es explícito.
En la tipografía implícita, el proceso lo realiza el compilador y no se pierde información. En la tipografía explícita, nosotros, como programador, haremos el lanzamiento manualmente, y al hacerlo, podríamos perder la información."
Sintaxis
La sintaxis para la tipografía es la siguiente:
Si observamos la sintaxis, veremos que el nombre typen se define en el soporte antes de la expresión o la operación. Por ejemplo: si estamos ejecutando una expresión en los tipos de datos enteros que nos darán la salida en el doble, escribiremos el doble en el soporte type_name, y después de eso, escribiremos el código para nuestra expresión. Una cosa a tener en cuenta es que, principalmente, durante las operaciones aritméticas, el compilador hace el lanzamiento en sí mismo, lo que significa que es una especificación de tipografía implícita porque el compilador lo hace automáticamente. El compilador define la jerarquía de los tipos de datos aritméticos y luego hace la conversión al tipo de datos, que está en la parte superior de la jerarquía.
Ejemplo 1
Echemos un vistazo a la siguiente pieza de código para comprender cómo podemos tomar la ayuda del proceso de encasillamiento para dividir un entero en otro y obtener un tipo de datos flotante en puntos. En este ejemplo, si no realizamos un casting en nuestro programa, obtendremos la salida como entero incluso si declaramos la variable Z como un doble, que se utiliza para almacenar el valor después de la operación. Por lo que no nos dará el valor exacto, y la salida no será correcta en entero.
Ahora en el código a continuación, hemos inicializado dos enteros, "X" e "Y", y les asignamos valores "21" y "4". También hemos tomado la tercera variable de DataType Double para almacenar el valor de salida, que estará en puntos. Durante la operación, hemos escrito dobles entre paréntesis antes de la división entre X e Y. Esto es un diseño de tipificación. Le estamos diciendo al compilador que arroje los valores en el doble y luego los divida para que podamos obtener nuestra salida en puntos. Luego imprimimos nuestra salida para verificar si era correcto o no.
Hay dos tipos de tipificación que uno está implícito, y el otro es explícito. Se discute la tipografía en C en este artículo.
#incluir
Int x = 21, y = 4;
doble z;
z = (doble) x/y;
printf ("La salida después de la tipecasting es: %f \ n", z);
regreso 0:
Después de compilar nuestro código, obtendremos el siguiente valor a medida que nuestra salida. Podemos ver que el valor está en decimales y nos está dando el valor exacto incluso después del punto. Si no hemos realizado un lanzamiento en nuestra expresión, obtendremos el resultado como 5.000000 porque el sistema dividirá los enteros y no obtendrá la salida después de los puntos. Pero con el typecasting, obtuvimos 5.250000, que es el valor real. Una cosa que notará sobre el código y la salida es que la precedencia del operador type_casting es más que la de la división o el operador "/". Esto significa que el sistema realizará el tipecastamiento primero en los enteros, los convertirá en doble y luego realizará el proceso de división.
Ejemplo 2
Discutimos anteriormente que hay dos tipos de tipografía. En el ejemplo anterior, hicimos un casting explícito. En este ejemplo, haremos una tipografía implícita, lo que significa que dejaremos que el compilador haga el casting por sí mismo. Hemos definido 3 variables A, B y C. Hemos dado tipos de datos, flotadores e enteros a ellos. Se da un valor en puntos decimales a la variable flotante, y se asigna un número simple al entero constante. La variable B, que es un entero, se convertirá en flotación automáticamente, y es un tipo de datos más grande en C relativamente. La variable A ya está a flote en términos de sus tipos.
Hay dos tipos de tipificación que uno está implícito, y el otro es explícito. Se discute la tipografía en C en este artículo.
#incluir
flotar a = 25.23
int b = 5;
flotante c;
c = a/b;
printf ("La salida después de la tipificación es: %f \ n", c);
regreso 0:
El valor de salida será de 25.23/5 = 5.046. Podemos ver en nuestro código que no hemos asignado ningún operador (type_casting) a nuestra expresión, pero obtuvimos el valor en puntos incluso con el tipo de datos de entero. Es porque el sistema ha convertido el tipo de datos por sí mismo. Después de todo, el tipo de datos de flotación tiene una preferencia más alta que el entero, y durante la operación, la variable "A" fue flotante. Por lo tanto, el compilador le dio prioridad a la flotación del tipo de datos, y automáticamente dio el resultado en flotación. Esto se llama Typecasting implícito.
Ejemplo 3
No solo no podemos convertir int para flotar o duplicar, pero también podemos convertir caracteres a otros tipos. Para hacerlo, hemos tomado tres variables con los tipos de datos int y el carácter. Hemos asignado el valor "10" a nuestro entero "X" y "Z" a nuestro personaje "A". Hemos resumido las variables de personaje e int. Lógicamente no es posible, pero con la ayuda de la tipografía, podemos hacerlo.
Hay dos tipos de tipificación que uno está implícito, y el otro es explícito. Se discute la tipografía en C en este artículo.
#incluir
Int x = 10
char a = 'z';
int suma;
sum = (int) x + a;
printf ("El valor del alfabeto z es: %f \ n", a);
printf ("La suma total es: %f \ n", suma)
regreso 0:
En ASCII, el valor de z es 90. Hemos impreso el valor de Z, que es 90. Después de agregar 90, que es el valor de Z en int, con el valor 10, que asignamos a nuestra X constante, obtendremos un total de 100. Este es un ejemplo de convertir un tipo de datos de cadena o caracteres en un número o tipo de datos entero.
Conclusión
En este tema, discutimos Typecasting y le explicamos cómo funciona el Typecasting y cuándo usar Typecasting. También discutimos diferentes tipos de tipografía en detalle con ejemplos. Typecasting es un enfoque muy eficiente para convertir los resultados de diferentes tipos de datos de acuerdo con nuestros requisitos. Nos ayuda a obtener la información precisa exacta sin el riesgo de perder nuestra información. Otra ventaja importante de la tipografía es que hace que nuestro código sea ligero y eficiente.