Du terminai tipo liejimas ir tipo konvertavimas yra naudojami programoje konvertuoti vieną duomenų tipą į kitą duomenų tipą. Konvertuoti duomenų tipą gali tik kompiliatorius, kai jie yra suderinami vienas su kitu. Aptarkime skirtumą tarp tipo liejimo ir tipo konvertavimo bet kuria programavimo kalba.
Kas yra tipo liejimas?
Kai programuotojas arba vartotojas, rašydamas bet kurios programavimo kalbos programos kodą, konvertuoja duomenų tipą į kitą duomenų tipą, mechanizmas vadinamas tipo liejimas . Programuotojas jį rankiniu būdu naudoja konvertuodamas vieną duomenų tipą į kitą. Jis naudojamas, jei norime pakeisti tikslinį duomenų tipą į kitą duomenų tipą. Atminkite, kad paskirties duomenų tipas turi būti mažesnis nei šaltinio duomenų tipas. Todėl jis taip pat vadinamas siaurėjančia konversija.
Sintaksė:
java kitaip, jei
Destination_datatype = (target_datatype) variable; (data_type) it is known as casting operator
Target_datatype: Tai duomenų tipas, į kurį norime konvertuoti paskirties duomenų tipą. Kintamasis apibrėžia vertę, kuri turi būti konvertuojama į tikslinių_duomenų tipą. Supraskime tipo liejimo sąvoką su pavyzdžiu.
Tarkime, mes norime konvertuoti plūdė duomenų tipas į tarpt duomenų tipas. Čia tikslinių duomenų tipas yra mažesnis nei šaltinio duomenys, nes dydis yra tarpt yra 2 baitai, o dydis plūdė duomenų tipas yra 4 baitai. Ir kai mes jį pakeičiame, plaukiojančio kintamojo reikšmė sutrumpinama ir konvertuojama į sveikąjį kintamąjį. Perdavimas gali būti atliekamas naudojant suderinamus ir nesuderinamus duomenų tipus.
ekspertų sistemos
float b = 3.0; int a = (int) b; // converting a float value into integer
Supraskime tipo liejimą per C programą.
Stačiakampio plotas.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(); }
Išvestis:
Kas yra tipo konvertavimas?
Jei duomenų tipas kompiliavimo metu automatiškai konvertuojamas į kitą duomenų tipą, vadinamas tipo konvertavimu. Konvertavimą atlieka kompiliatorius, jei abu duomenų tipai yra suderinami vienas su kitu. Atminkite, kad paskirties duomenų tipas neturi būti mažesnis už šaltinio tipą. Jis taip pat žinomas kaip plečiantis duomenų tipo konvertavimas.
perdaryti žemėlapį
Supraskime tipo konvertavimą pavyzdžiu.
Tarkime, mes turime tarpt duomenų tipą ir norite jį konvertuoti į a plūdė duomenų tipas. Tai yra duomenų tipai, suderinami vienas su kitu, nes jų tipai yra skaitiniai, o int dydis yra 2 baitai, o tai yra mažesnis nei plūduriuojančių duomenų tipas. Taigi, kompiliatorius automatiškai konvertuoja duomenų tipus neprarasdamas ar nesutrumpinęs reikšmių.
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. */
Aukščiau pateiktame pavyzdyje int duomenų tipas konvertuojamas į float, kurio dydis yra didesnis nei int, todėl išplečiamas šaltinio duomenų tipas.
Supraskime tipo konvertavimą per 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(); }
Išvestis:
Skirtumas tarp tipo liejimo ir tipo konvertavimo
S.N. | Tipas Liejimas | Tipas Konversija |
---|---|---|
1 | Tipo perdavimas yra mechanizmas, kai vienas duomenų tipas konvertuojamas į kitą duomenų tipą, naudojant liejimo () operatorių, kurį atlieka programuotojas. | Tipo konvertavimas leidžia kompiliatoriui konvertuoti vieną duomenų tipą į kitą duomenų tipą programos ar kodo kompiliavimo metu. |
2 | Jis gali būti naudojamas tiek suderinamo, tiek nesuderinamo duomenų tipo. | Tipo konvertavimas naudojamas tik su suderinamais duomenų tipais, todėl jai nereikia jokio perdavimo operatoriaus. |
3 | Tam reikia, kad programuotojas rankiniu būdu perkeltų vienus duomenis į kitą tipą. | Norint konvertuoti vieną duomenų tipą į kitą, nereikia jokio programuotojo įsikišimo, nes kompiliatorius automatiškai juos sukompiliuoja programos vykdymo metu. |
4 | Jis naudojamas programuotojo kurdamas programą. | Jis naudojamas arba vyksta programos kompiliavimo metu. |
5 | Perduodant vieną duomenų tipą į kitą, paskirties duomenų tipas turi būti mažesnis nei šaltinio duomenys. | Konvertuojant vieną duomenų tipą į kitą, paskirties tipas turi būti didesnis nei šaltinio duomenų tipas. |
6 | Jis taip pat žinomas kaip siaurėjanti konversija, nes vienas didesnis duomenų tipas konvertuojamas į mažesnį duomenų tipą. | Jis taip pat žinomas kaip išplėtimas, nes vienas mažesnis duomenų tipas konvertuojamas į didesnį duomenų tipą. |
7 | Jis yra patikimesnis ir efektyvesnis. | Jis yra mažiau efektyvus ir mažiau patikimas. |
8 | Yra galimybė prarasti duomenis arba informaciją tipo liejimo metu. | Konvertuojant tipą, mažai tikėtina, kad duomenys bus prarasti konvertuojant iš mažo į didelį duomenų tipą. |
8 | float b = 3.0; int a = (int) b | int x = 5, y = 2, c; float q = 12.5, p; p = q/x; |