logo

Razlika između pretvaranja tipa i pretvorbe tipa

Dva pojma lijevanje tipa i pretvorba tipa koriste se u programu za pretvaranje jedne vrste podataka u drugu vrstu podataka. Konverzija tipa podataka moguća je samo od strane kompajlera kada su oni međusobno kompatibilni. Raspravljajmo o razlici između pretvaranja tipa i konverzije tipa u bilo kojem programskom jeziku.

Što je određivanje tipa?

Kada programer ili korisnik pretvori tip podataka u drugi tip podataka dok piše programski kod bilo kojeg programskog jezika, mehanizam je poznat kao lijevanje tipa . Programer ga ručno koristi za pretvaranje jedne vrste podataka u drugu. Koristi se ako želimo promijeniti ciljni tip podataka u drugi tip podataka. Ne zaboravite da odredišni tip podataka mora biti manji od izvornog tipa podataka. Stoga se naziva i sužavajuća pretvorba.

Razlika između pretvaranja tipa i pretvorbe tipa

Sintaksa:

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

Target_datatype: To je vrsta podataka u koju želimo pretvoriti odredišnu vrstu podataka. Varijabla definira vrijednost koju treba pretvoriti u tip target_data. Razmotrimo koncept pretvaranja tipa na primjeru.

Pretpostavimo da želimo pretvoriti plutati tip podataka u int tip podataka. Ovdje je ciljni tip podataka manji od izvornih podataka zbog veličine int je 2 bajta, a veličina plutati tip podataka je 4 bajta. A kada je promijenimo, vrijednost float varijable se skraćuje i pretvara u cjelobrojnu varijablu. Casting se može izvršiti s kompatibilnim i nekompatibilnim tipom podataka.

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

Hajdemo razumjeti pretvaranje tipa kroz C program.

PovršinaPravokutnika.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(); } 

Izlaz:

Razlika između pretvaranja tipa i pretvorbe tipa

Što je pretvorba tipa?

Ako se vrsta podataka automatski pretvara u drugu vrstu podataka tijekom vremena kompajliranja, to je poznato kao pretvorba tipa. Pretvorbu izvodi kompilator ako su obje vrste podataka međusobno kompatibilne. Imajte na umu da odredišni tip podataka ne smije biti manji od izvornog tipa. Također je poznat kao širenje konverzija tipa podataka.

Razlika između pretvaranja tipa i pretvorbe tipa

Razmotrimo pretvorbu tipa na primjeru.

Pretpostavimo da imamo int tip podataka i želite ga pretvoriti u a plutati tip podataka. To su tipovi podataka međusobno kompatibilni jer su njihovi tipovi numerički, a veličina int je 2 bajta što je manje od tipa podataka float. Stoga prevoditelj automatski pretvara tipove podataka bez gubitka ili skraćivanja vrijednosti.

 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. */ 

U gornjem primjeru, int tip podataka se pretvara u float, koji ima veću veličinu od int, i stoga proširuje izvorni tip podataka.

Razumimo pretvorbu tipa kroz C program.

 #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(); } 

Izlaz:

Razlika između pretvaranja tipa i pretvorbe tipa

Razlika između pretvaranja tipa i pretvorbe tipa

S N. Lijevanje tipa Pretvorba tipa
1 Pretvaranje tipa je mehanizam u kojem se jedan tip podataka pretvara u drugi tip podataka pomoću operatora pretvaranja () od strane programera. Pretvorba tipa omogućuje prevoditelju da pretvori jedan tip podataka u drugi tip podataka u vrijeme kompajliranja programa ili koda.
2 Može se koristiti i za kompatibilnu vrstu podataka i za nekompatibilnu vrstu podataka. Pretvorba tipa koristi se samo s kompatibilnim tipovima podataka i stoga ne zahtijeva nikakav operator pretvaranja.
3 Zahtijeva programera da ručno pretvori jedan podatak u drugi tip. Ne zahtijeva nikakvu intervenciju programera za pretvaranje jedne vrste podataka u drugu jer ih kompajler automatski kompajlira tijekom izvođenja programa.
4 Programer ga koristi dok dizajnira program. Koristi se ili se odvija u vrijeme kompajliranja programa.
5 Prilikom pretvaranja jednog tipa podataka u drugi, odredišni tip podataka mora biti manji od izvornih podataka. Prilikom pretvaranja jedne vrste podataka u drugu, odredišna vrsta treba biti veća od izvorne vrste podataka.
6 Također je poznata kao sužavanje pretvorbe jer se jedan veći tip podataka pretvara u manji tip podataka. Također je poznata kao proširiva konverzija jer se jedna manja vrsta podataka pretvara u veću vrstu podataka.
7 Pouzdaniji je i učinkovitiji. Manje je učinkovit i manje pouzdan.
8 Postoji mogućnost gubitka podataka ili informacija tijekom pretvaranja tipa. Kod pretvorbe tipa podaci vjerojatno neće biti izgubljeni pri pretvorbi iz male u veliku vrstu podataka.
8
float b = 3.0; int a = (int) b
int x = 5, y = 2, c; float q = 12.5, p; p = q/x;