Co je převod typu?

Konverze typu je forma typového děrování, technika používaná v informatice a programování počítačového softwaru, při níž se datový typ konkrétní entity mění na jiný datový typ. Koncept puncování typu vznikl tak, že obcházel specifikovaný typový systém programovacího jazyka, takže lze dosáhnout určitých efektů, které by jinak bylo obtížné dosáhnout v rámci formální definice programovacího jazyka. Konverze typu, která je nejběžnější formou puncování typu, je možná prakticky ve všech programovacích jazycích, i když některé jazyky nabízejí další metody puncování typu, jako je unie nebo reinterpretace. Někteří průvodci stylem programování doporučují, aby nedošlo k přepisování typu, i když se převody typu často používají.

Převod typu se také někdy označuje jako typcasting nebo nátlak, v závislosti na použitém programovacím jazyce. Každý programovací jazyk má pravidla pro úspěšné použití převodu typu. Obecně lze říci, že konverze mohou probíhat na základních typech nebo objektech.

Existuje několik základních datových typů nebo tříd datových typů. Jeden běžný datový typ používaný v matematických operacích je celá čísla nebo prostá čísla, která se mohou pohybovat v tisících nebo milionech v závislosti na počtu bitů v jejich šířce. Například 32bitové celé číslo se může pohybovat od nuly do 4 294 967 295, nebo -2 147 483 648 až 2 147 483 648. Dalším typem je číslo s plovoucí desetinnou čárkou, což je v podstatě jakékoli číslo s desetinnou čárkou.

Jako datový typ lze také použít jednotlivé znaky, například písmeno abecedy nebo interpunkční znaménko. Datový typ řetězce je jakákoli skupina nebo posloupnost čísel a / nebo písmen bez přerušení; délky řetězců jsou libovolné, ale jejich velikost nebo limit je obvykle definován v programovacím jazyce. Nejstarší datový typ je booleovský, který je jednoduše pravdivý nebo nepravdivý. Jiné třídy typů zahrnují algebraické, funkce, strojová data a objekty. Například v objektově orientovaných jazycích může předek objektu použít typ nadřazeného objektu, takže jejich vzájemné interakce jdou plynuleji.

Specifika převodu typu se do hry nedostanou, dokud nebudou zohledněna pravidla konkrétního programovacího jazyka. Pravidla některých jazyků dále určují, zda je převod typu implicitní nebo explicitní. Implicitní převod typu se nejčastěji nazývá nátlak a obvykle se koná v době, kdy je program kompilován ze zdrojového kódu do spustitelného programu. To se může stát, řekněme, pokud se ve výrazu použije více datových typů a poté se provede porovnání. Převod typu se považuje za implicitní a kompilátor s ním automaticky zachází; explicitní převod typu je definován v kódu programu. Programovací jazyk C rozlišuje mezi nimi dva, vyvolává implicitní konverzi typu nátlakem a explicitní převod typu obsazení.

Jednoduchým příkladem převodu běžného typu by byly matematické operace s čísly v počítačovém programu. Počítačový program přijímající desetinné číslo, datový typ s pohyblivou desetinnou čárkou, jako vstup může potřebovat převést číslo na celočíselný datový typ pro provádění matematických operací nebo naopak. Tato konverze umožňuje operaci pokračovat.

JINÉ JAZYKY

Pomohl vám tento článek? Děkuji za zpětnou vazbu Děkuji za zpětnou vazbu

Jak můžeme pomoci? Jak můžeme pomoci?