¿Qué es escribir en C?
Escribir es cambiar un tipo de datos a otro. También se denomina conversión de datos o conversión de tipos. Es uno de los conceptos importantes introducidos en la programación «C».
Los programas ‘C’ proporcionan dos tipos de operaciones de resolución de tipos:
Tipo de soluciones implícitas
Las soluciones implícitas significan convertir tipos de datos sin perder su esencia. Este tipo de escritura es necesario cuando desea cambiar los tipos de datos. pecado la importancia de cambiar los valores almacenados dentro de la variable.
La conversión de tipo implícita se produce automáticamente cuando un valor se copia a su tipo de coincidencia de datos. Durante la conversión, se aplican reglas estrictas sobre la conversión de tipos. Si las óperas tienen dos tipos de datos diferentes, entonces una ópera con un tipo de datos más bajo se cambia a un tipo de datos más alto. Este tipo de conversión se puede ver en el siguiente ejemplo.
#include<stdio.h> int main(){ short a=10; //initializing variable of short data type int b; //declaring int variable b=a; //implicit type casting printf("%dn",a); printf("%dn",b); }
Producción
10 10
- En el ejemplo separado, determinamos una variable de tipo de datos corta con un valor inicial como 10.
- En la segunda línea, declaramos una variable de tipo de datos int.
- En la tercera línea, a la variable s se le asigna el valor de las variables s. La conversión de tipo de tercera línea implícita se realiza cuando el valor de una variable s que es un tipo de datos corto se copia en la variable a de tipo de datos int.
Convertir carácter a int
Considere agregar el ejemplo de un carácter decodificado en ASCII a un número entero:
#include <stdio.h> main() { int number = 1; char character="k"; /*ASCII value is 107 */ int sum; sum = number + character; printf("Value of sum : %dn", sum ); }
Producción:
Value of sum : 108
Aquí, un compilador ha ejecutado un número entero convirtiendo un valor de ‘k’ a ASCII antes de realizar la operación de complemento real.
Jerarquía de conversión aritmética
El compilador continúa avanzando un carácter a un número entero. Si las óperas todavía tienen diferentes tipos de datos, se cambian al tipo de datos más alto que se muestra en el siguiente cuadro de jerarquía:
Considere el siguiente ejemplo para comprender el concepto:
#include <stdio.h> main() { int num = 13; char c="k"; /* ASCII value is 107 */ float sum; sum = num + c; printf("sum = %fn", sum );}
Producción:
sum = 120.000000
Inicialmente, la variable c se convierte en un entero, pero el compilador cambia num y C en un «flotador» y se agregan para producir un resultado «flotante».
Puntos clave sobre la conversión implícita
- Un tipo implícito de conversión de tipo se denomina conversión de tipo estándar. No requerimos palabras clave o declaraciones especiales para soluciones implícitas de ningún tipo.
- También se proporciona la conversión de un tipo de datos más pequeño a un tipo de datos más grande promoción de tipo. En el ejemplo anterior, también podemos decir que se avanza el valor de s para escribir un número entero.
- La conversión de tipo implícita siempre ocurre con los tipos de datos compatibles.
No podemos hacer soluciones implícitas a los tipos de datos incompatibles, como:
- La conversión de un flotante en un número entero reducirá la parte de la fracción y perderá el significado del valor.
- Una doble conversión servirá para asegurar la flotación de los dígitos.
- La conversión de un número entero largo en un número entero reducirá demasiados bits de orden superior.
En todos los casos anteriores, cuando cambiamos los tipos de datos, el valor pierde su significado. El compilador suele advertir de la pérdida de significado.
La programación ‘C’ proporciona otra forma de escribir con un tipo obvio de solución.
Escriba soluciones express
En la conversión de tipo implícita, el tipo de datos se cambia automáticamente. Hay algunos casos en los que es posible que necesitemos implementar la conversión de tipos. Supongamos que tenemos una sección variable que almacena una sección de dos óperas que se declara como un tipo de datos int.
int result, var1=10, var2=3; result=var1/var2;
En este caso, después de la separación de las variables var1 y var2, el resultado almacenado en el «resultado» será una variable en formato entero. Siempre que esto sucede, el valor almacenado en la variable “resultado” pierde su significado porque no considera la fracción fracción que normalmente se encuentra en unos dos números.
Para implementar la conversión de tipos en tales casos, usamos soluciones de tipos.
Requiere un operador de fundición de tipos. La sintaxis general para las operaciones de resolución de tipos es la siguiente:
(type-name) expression
Seo
- El tipo de nombre es el tipo de datos del lenguaje ‘C’ estándar.
- Una expresión puede ser una constante, una variable o una expresión real.
Escribamos un programa para ilustrar la aplicación de una especie de proyección explícita en ‘C’.
#include<stdio.h> int main() { float a = 1.2; //int b = a; //Compiler will throw an error for this int b = (int)a + 1; printf("Value of a is %fn", a); printf("Value of b is %dn",b); return 0; }
Producción:
Value of a is 1.200000 Value of b is 2
- Comenzamos con una variable de tipo flotante ‘a’.
- Entonces tenemos otra variable ‘b’ de tipo de datos enteros. Dado que las variables ‘a’ y ‘b’ son de diferentes tipos de datos, ‘C’ no permitirá el uso de esa expresión y aumentará el error. En algunas versiones de ‘C’, se considerará la expresión pero no se requerirá el resultado.
- Para evitar tales situaciones, hemos impreso la variable de tipo flotante ‘a’. Mediante el uso de métodos de resolución explícitos, convertimos un flotante en un número entero de tipo de datos.
- Tenemos un valor impreso ‘a’ que todavía está flotando
- Después de escribir, el entero ‘b’. El resultado siempre será.
De esta manera, podemos aplicar una proyección explícita en la programación ‘C’.
Resumen
- La escritura también se conoce como conversión de tipo
- Significa convertir un tipo de datos en otro.
- La conversión de un tipo de datos más pequeño en uno más grande se denomina tipo de promoción.
- ‘C’ proporciona una ruta implícita explícita para la conversión de tipos.
- La conversión de tipo implícita funciona automáticamente cuando se encuentra el tipo de datos coincidente.
- Se requiere un operador de tipo para la conversión explícita.
Tenga en cuenta las siguientes reglas de práctica de registro al tratar con diferentes tipos de datos para evitar la pérdida de datos:
- Los tipos enteros deben convertirse a flotantes.
- Los tipos flotantes deben convertirse a dobles.
- Los tipos de caracteres deben convertirse a números enteros.