A típusöntés az egyik adattípusból egy változót egy másik adattípusba konvertál. Ha például egy long értéket szeretnénk egy egyszerű egész számba tárolni, akkor a long értéket typecastolhatjuk int értékre. Az értékeket egyik típusból a másikba explicit módon konvertálhatja a cast operátor segítségével. A c nyelvben kétféle típusváltás létezik, az implicit konverzió és az explicit konverzió. Ebben a cikkben a típusöntés és a típuskonverziók közötti különbséget is megismerjük.
Az új adattípust a változó neve vagy értéke előtt zárójelben kell megemlíteni, amelyet tipizálni kell.
C típusöntési példaprogram:
Az alábbi C programban a 7/5 önmagában 1 egész szám értéket ad.
Ezért a típusöntést az osztás előtt végezzük, hogy a float érték (1.4) megmaradjon.
Kimenet:
1.400000
Az adott típusú kifejezés egy másik típusba való átalakítását nevezzük típusöntésnek. a típusöntés inkább a c nyelvű programozásban használatos.
Itt a legjobb gyakorlat az alacsonyabb adattípus magasabb adattípusba való átalakítása az adatvesztés elkerülése érdekében.
Az adatok csonkolódni fognak, ha a magasabb adattípust alacsonyabbra alakítjuk át. Például, ha egy lebegőszámot int-be konvertálunk, a tizedesvessző után lévő adatok elvesznek.
A c nyelvben kétféle típusátvitel létezik.
A típusátvitel típusai a C-ben
Implicit konverzió
Az implicit konverzió nem igényel semmilyen operátort a konvertáláshoz. Ezek automatikusan végrehajtódnak, amikor egy értéket egy kompatibilis típusba másolunk a programban.
Itt az a értékét int-ről double-ra léptettük át, és nem kellett semmilyen típusbeöntési operátort megadnunk. Ezt nevezzük standard konverziónak.
Példa :-
Kimenet:-implicit érték 20.
Explicit konverzió
A C nyelvben sok konverzió, különösen azok, amelyek az érték eltérő értelmezését feltételezik, explicit konverziót igényelnek. Az explicit típuskonverzióra már láttunk két jelölést.
Ezeket nem automatikusan hajtjuk végre, amikor egy értéket egy kompatibilis típusba másolunk a programban.
Példa :-
Kimenet:
Az explicit érték 20.
Szokásos aritmetikai konverzió
A szokásos aritmetikai konverziók implicit módon történnek, hogy értékeiket egy közös típusba öntsék, a C azt a szabályt alkalmazza, hogy minden kifejezésben, kivéve a hozzárendeléseket, minden implicit típuskonverzió alacsonyabb méretű típusból magasabb méretű típusba történik, ahogy az alább látható:
Beépített típusöntő függvények a C nyelvben:
A C nyelvben számos beépített típusöntő függvény áll rendelkezésre, amelyek az adattípusok egyik típusból a másikba történő átalakítását végzik.
A közelmúltban felmérést készítettünk különböző programozókról, akik elérhetőek a google plus közösségi médiában. Felmérést végeztünk a c nyelven történő típusöntésről.
Különbség a típusöntés és a típuskonverzió között
Amikor az egyik adattípust egy másikba kell konvertálni, két kifejezés jut eszünkbe: “typecasting” és “type conversion”. Amikor a két típus kompatibilis egymással, akkor az egyik típus átalakítását a másikba automatikusan elvégzi a fordító, ami hideg típuskonverzió, de emlékszik, hogy egy nagy adattípust tárolhatunk a másikba, például nem tárolhatunk egy float-t az int-be, mert a float nagyobb, mint az int. míg a typecastingot kifejezetten a programozónak kell elvégeznie.
érték.