Įveskite Conversion C++
Tipas iš esmės yra perėjimas iš vieno tipo į kitą. Yra dviejų tipų konvertavimo tipai:
- Netiesioginis tipo konvertavimas Taip pat žinomas kaip „automatinis tipo konvertavimas“.
- Tai atlieka pats kompiliatorius, be jokio išorinio vartotojo paleidimo.
- Paprastai įvyksta, kai išraiškoje yra daugiau nei vienas duomenų tipas. Tokiomis sąlygomis tipo konvertavimas (tipo skatinimas) vyksta siekiant išvengti duomenų praradimo.
- Visi kintamųjų duomenų tipai atnaujinami į didžiausio duomenų tipo kintamojo duomenų tipą.
bool ->char -> short int -> int -> unsigned int -> long -> unsigned -> long long -> float -> double -> long double
- Netiesioginės konversijos gali prarasti informaciją, gali būti prarasti ženklai (kai pasirašytas netiesiogiai konvertuojamas į nepasirašytą), gali atsirasti perpildymas (kai long long netiesiogiai paverčiamas plūduriuojančiu).
- Konvertavimas pagal užduotį: Tai atliekama aiškiai apibrėžiant reikiamą tipą prieš reiškinį skliausteliuose. Tai taip pat gali būti laikoma stipriu liejimu.
Sintaksė:
(type) expression
kur tipo nurodo duomenų tipą, į kurį konvertuojamas galutinis rezultatas.
Pavyzdys:
// C++ program to demonstrate>// explicit type casting>>#include>using>namespace>std;>>int>main()>{>>double>x = 1.2;>>>// Explicit conversion from double to int>>int>sum = (>int>)x + 1;>>>cout < <>'Sum = '>< < sum;>>>return>0;>}>
Išvestis:Sum = 2
- Konversija naudojant „Cast“ operatorių: „Cast“ operatorius yra vienetinis operatorius kuris verčia vieną duomenų tipą konvertuoti į kitą duomenų tipą.
C++ palaiko keturis liejimo tipus:- Statinis aktorius
- Dinaminis perdavimas
- Const Vaid
- Iš naujo interpretuokite aktorių
- Tai daroma siekiant pasinaudoti tam tikromis tipų hierarchijų ar tipo reprezentacijų ypatybėmis.
- Tai padeda apskaičiuoti išraiškas, kuriose yra įvairių duomenų tipų kintamieji.
Pavyzdys:
#include>using>namespace>std;>int>main()>{>>float>f = 3.5;>>>// using cast operator>>int>b =>static_cast><>int>>(f);>>
Išvestis:3
Tipo keitimo pranašumai:
Jums Gali Patikti
Top Straipsniai
Kategorija
Tipo numanomos konversijos pavyzdys:
// An example of implicit conversion> > #include> using> namespace> std;> > int> main()> {> > int> x = 10;> // integer x> > char> y => 'a'> ;> // character c> > > // y implicitly converted to int. ASCII> > // value of 'a' is 97> > x = x + y;> > > // x is implicitly converted to float> > float> z = x + 1.0;> > > cout < <> 'x = '> < < x < < endl> > < <> 'y = '> < < y < < endl> > < <> 'z = '> < < z < < endl;> > > return> 0;> }> |
Išvestis:
x = 107 y = a z = 108Aiškus tipo konvertavimas : šis procesas taip pat vadinamas tipo liejimu ir jį nustato vartotojas. Čia vartotojas gali rašyti perduoti rezultatą, kad jis būtų tam tikro tipo duomenų.
C++ tai galima padaryti dviem būdais: