logo

Diferença entre conversão de tipo e conversão de tipo

Os dois termos tipo de fundição e a conversão de tipo são usados ​​em um programa para converter um tipo de dados em outro tipo de dados. A conversão do tipo de dados só é possível pelo compilador quando eles são compatíveis entre si. Vamos discutir a diferença entre conversão de tipo e conversão de tipo em qualquer linguagem de programação.

O que é uma conversão de tipo?

Quando um tipo de dados é convertido em outro tipo de dados por um programador ou usuário enquanto escreve um código de programa de qualquer linguagem de programação, o mecanismo é conhecido como tipo de fundição . O programador o utiliza manualmente para converter um tipo de dados em outro. É usado se quisermos alterar o tipo de dados de destino para outro tipo de dados. Lembre-se de que o tipo de dados de destino deve ser menor que o tipo de dados de origem. Portanto, também é chamada de conversão restritiva.

Diferença entre conversão de tipo e conversão de tipo

Sintaxe:

 Destination_datatype = (target_datatype) variable; (data_type) it is known as casting operator 

Tipo_de_dados de destino: É o tipo de dados no qual queremos converter o tipo de dados de destino. A variável define um valor que será convertido no tipo target_data. Vamos entender o conceito de conversão de tipo com um exemplo.

Suponha que queremos converter o flutuador tipo de dados em interno tipo de dados. Aqui, o tipo de dados de destino é menor que os dados de origem porque o tamanho dos interno é de 2 bytes e o tamanho do flutuador o tipo de dados é de 4 bytes. E quando o alteramos, o valor da variável float é truncado e convertido em uma variável inteira. A conversão pode ser feita com um tipo de dados compatível e não compatível.

 float b = 3.0; int a = (int) b; // converting a float value into integer 

Vamos entender a conversão de tipos através de um programa C.

AreaOfRectangle.c

 #include #include void main() { printf('
 Welcome to Javatpoint tutorials '); float x = 3.5, y = 4.5; // the size of float variable is 4 byte. int area; // the size of the int variable is 2 bytes. area = (int) x * y; // after conversion the product converts into integer printf('
 Area of a Rectangle is : %d', area); printf('
 Here, we convert float data type into the Int data type'); getch(); } 

Saída:

Diferença entre conversão de tipo e conversão de tipo

O que é conversão de tipo?

Se um tipo de dados for convertido automaticamente em outro tipo de dados em tempo de compilação, isso é conhecido como conversão de tipo. A conversão é realizada pelo compilador se ambos os tipos de dados forem compatíveis entre si. Lembre-se de que o tipo de dados de destino não deve ser menor que o tipo de origem. Também é conhecido como ampliando conversão do tipo de dados.

Diferença entre conversão de tipo e conversão de tipo

Vamos entender a conversão de tipo com um exemplo.

Suponha que temos um interno tipo de dados e deseja convertê-lo em um flutuador tipo de dados. Esses são tipos de dados compatíveis entre si porque seus tipos são numéricos e o tamanho de int é 2 bytes, menor que o tipo de dados float. Conseqüentemente, o compilador converte automaticamente os tipos de dados sem perder ou truncar os valores.

 int a = 20; Float b; b = a; // Now the value of variable b is 20.000 /* It defines the conversion of int data type to float data type without losing the information. */ 

No exemplo acima, o tipo de dados int é convertido em float, que tem um tamanho maior que int e, portanto, amplia o tipo de dados de origem.

Vamos entender a conversão de tipos por meio de um programa C.

 #include #include void main() { printf('
 Welcome to Javatpoint tutorials '); int x = 3, y = 4; // the size of int variable is 2 byte. float area; // the size of float variable is 4 bytes. area = x * y; /* It is a type conversion that automatically converted by the compiler at the compile time of a program. */ printf('
 Area of a Rectangle is : %f', area); printf('
 Here, we convert int data type to the float data type'); getch(); } 

Saída:

Diferença entre conversão de tipo e conversão de tipo

Diferença entre conversão de tipo e conversão de tipo

S.N. Fundição de tipo Conversão de tipo
1 A conversão de tipo é um mecanismo no qual um tipo de dados é convertido em outro tipo de dados usando um operador casting () por um programador. A conversão de tipo permite que um compilador converta um tipo de dados em outro tipo de dados no momento da compilação de um programa ou código.
2 Pode ser usado tipo de dados compatível e tipo de dados incompatível. A conversão de tipo é usada apenas com tipos de dados compatíveis e, portanto, não requer nenhum operador de conversão.
3 Requer que um programador converta manualmente um dado em outro tipo. Não requer nenhuma intervenção do programador para converter um tipo de dados em outro porque o compilador os compila automaticamente no tempo de execução de um programa.
4 É usado ao projetar um programa pelo programador. É usado ou ocorre em tempo de compilação de um programa.
5 Ao converter um tipo de dados para outro, o tipo de dados de destino deve ser menor que os dados de origem. Ao converter um tipo de dados para outro, o tipo de destino deve ser maior que o tipo de dados de origem.
6 Também é conhecido como conversão restrita porque um tipo de dados maior é convertido em um tipo de dados menor. Também é conhecido como conversão ampliada porque um tipo de dados menor é convertido em um tipo de dados maior.
7 É mais confiável e eficiente. É menos eficiente e menos confiável.
8 Existe a possibilidade de perda de dados ou informações na conversão de tipo. Na conversão de tipo, é improvável que os dados sejam perdidos ao converter de um tipo de dados pequeno para um grande.
8
float b = 3.0; int a = (int) b
int x = 5, y = 2, c; float q = 12.5, p; p = q/x;