Typové obsazení je způsob převodu proměnné z jednoho datového typu na jiný datový typ. Pokud například chcete uložit hodnotu long do jednoduchého celého čísla, pak můžete typecastovat long na int. Hodnoty z jednoho typu na jiný můžete převést explicitně pomocí operátoru cast. V jazyce c existují dva typy typových převodů, kterými jsou implicitní převody a explicitní převody. V tomto článku se také dozvíme, jaký je rozdíl mezi typem casting a typem konverze.
Nový datový typ by měl být uveden před názvem proměnné nebo hodnoty v závorce, která má být typecastována.
Příklad programu pro typové obsazení:
V níže uvedeném programu v jazyce C se při samotném dělení 7/5 získá celočíselná hodnota 1.
Pro zachování hodnoty float (1,4) se tedy před dělením provede typové obsazení.
Výstup:
1.400000
Převedení výrazu daného typu na jiný typ se nazývá type casting. typecasting se více používá při programování v jazyce c.
Zde je nejlepší postup převést nižší datový typ na vyšší datový typ, aby nedošlo ke ztrátě dat.
Data budou při převodu vyššího datového typu na nižší zkrácena. Například pokud se float převede na int, ztratí se data, která se nacházejí za desetinnou čárkou.
V jazyce c existují dva typy typování.
Typy typování v jazyce C
Implicitní konverze
Implicitní konverze nevyžadují žádný operátor pro konvertované. Provádějí se automaticky při kopírování hodnoty na kompatibilní typ v programu.
Zde byla hodnota a povýšena z int na double a nemuseli jsme uvádět žádný operátor pro převod typu. Tomu se říká standardní konverze.
Příklad :-
Výstup:-
implicitní hodnota je 20.
Explicitní konverze
V jazyce C vyžaduje mnoho konverzí, zejména těch, které znamenají jinou interpretaci hodnoty, explicitní konverzi. Již jsme se setkali se dvěma zápisy pro explicitní konverzi typu
Ty se neprovádějí automaticky, když je hodnota v programu kopírována na kompatibilní typ.
Příklad :-
Výstup:-
Explicitní hodnota je 20.
Jednotlivé aritmetické konverze
Obvyklé aritmetické konverze se implicitně provádějí pro obsazení jejich hodnot ve společném typu, C používá pravidlo, že ve všech výrazech s výjimkou přiřazení se veškeré implicitní typové konverze provádějí z typu nižší velikosti na typ vyšší velikosti, jak je uvedeno níže:
Vestavěné funkce typového castingu v jazyce C:
V jazyce C je k dispozici mnoho vestavěných funkcí typového castingu, které provádějí převod datového typu z jednoho typu na jiný.
Nedávno jsme dělali průzkum mezi různými programátory, kteří jsou k dispozici na sociálních sítích google plus. Udělali jsme průzkum pro typ casting v jazyce c.
Rozdíl mezi type casting a type conversion
Kdykoli je potřeba převést jeden datový typ na jiný, napadnou nás dva pojmy „typecasting“ a „type conversion“. Pokud jsou oba typy navzájem kompatibilní, pak převod jednoho typu na druhý provede automaticky překladač, což je studená typová konverze, ale pamatuje si, že můžeme uložit velký datový typ do druhého, například nemůžeme uložit float do int, protože float je větší než int. kdežto typecasting musí explicitně provést programátor.
.