Typovanie v jazyku C je proces konverzie jedného dátového typu na iný dátový typ programátorom pomocou operátora odlievania počas návrhu programu.
Pri typecasting môže byť cieľový dátový typ menší ako zdrojový dátový typ pri konverzii dátového typu na iný dátový typ, preto sa nazýva aj zužujúca konverzia.
Syntax:
int x; float y; y = (float) x;>
Typy typového odlievania v C
V C existujú dva hlavné typy na vykonávanie typového odlievania.

- Implicitné typové obsadenie
- Explicitné typové obsadenie
1. Implicitné typové obsadenie
Implicitné pretypovanie v jazyku C sa používa na konverziu dátového typu ľubovoľnej premennej bez použitia skutočnej hodnoty, ktorú premenná obsahuje. Vykonáva prevody bez toho, aby menil akúkoľvek hodnotu, ktorá je uložená v dátovej premennej. Konverzia nižšieho dátového typu na vyšší dátový typ prebehne automaticky.
Propagáciu celého čísla najskôr vykoná kompilátor. Potom určí, či dva z operandov majú rôzne typy údajov. Ak použijete nižšie uvedenú hierarchiu, konverzia by vyzerala nasledovne, ak majú obe rôzne typy údajov:
reťazec java zreťaziť

2. Explicitné typové obsadenie
V niektorých prípadoch, ak dátový typ zostane nezmenený, môže poskytnúť nesprávny výstup. V takýchto prípadoch môže typové obsadenie pomôcť získať správny výstup a skrátiť čas kompilácie. Pri explicitnom pretypovaní musíme vynútiť konverziu medzi typmi údajov. Tento typ odlievania je v programe explicitne definovaný.
Program 1:
C
trieda java skenera
// C program to illustrate the use of> // typecasting> #include> > // Driver Code> int> main()> {> > // Given a & b> > int> a = 15, b = 2;> > float> div> ;> > > // Division of a and b> > div> = a / b;> > > printf> (> 'The result is %f
'> ,> div> );> > > return> 0;> }> |
>
>Výkon:
The result is 7.000000>
Vysvetlenie: Tu je skutočný potrebný výstup 7 500 000 , ale výsledok je taký 7 000 000 . Ak chcete získať správny výstup, jedným zo spôsobov je zmeniť typ údajov danej premennej. Správny výstup sa však dá urobiť aj pomocou typové obsadenie . Pozostáva z vloženia dvojice zátvoriek okolo názvu dátového typu ako delenie = (float) a/b .
zlučovací druh
Program 2:
C
// C program to showcase the use of> // typecasting> #include> > // Driver Code> int> main()> {> > // Given a & b> > int> a = 15, b = 2;> > char> x => 'a'> ;> > > double> div> ;> > > // Explicit Typecasting in double> > div> = (> double> )a / b;> > > // converting x implicitly to a+3 i.e, a+3 = d> > x = x + 3;> > > printf> (> 'The result of Implicit typecasting is %c
'> , x);> > > printf> (> 'The result of Explicit typecasting is %f'> ,> div> );> > > return> 0;> }> |
>
>
java previesť int na reťazecVýkon
The result of Implicit typecasting is d The result of Explicit typecasting is 7.500000>
Vysvetlenie: Vo vyššie uvedenom programe C je výraz (dvojité) konvertuje premennú a z typu int písať dvojitý pred operáciou.
V programovaní v jazyku C je zabudovaných 5 funkcií pretypovania.
- atof(): Táto funkcia sa používa na konverziu typu údajov reťazca na typ údajov typu float.
- atbol(): Táto funkcia sa používa na konverziu dátového typu reťazec na dlhý dátový typ.
- Sýtič(): Táto funkcia sa používa na konverziu typu dlhých údajov na typ údajov reťazec.
- itoba() : Táto funkcia sa používa na konverziu dátového typu int na dátový typ reťazca.
- ťahať () : Tento typ údajov sa používa na konverziu typu údajov reťazca na typ údajov int.
Výhody typového odlievania
- Typ casting v programovaní C robí program veľmi ľahkým.
- Typová reprezentácia a hierarchia sú niektoré funkcie, ktoré môžeme využiť pomocou typového obsadzovania.
- Pretypovanie pomáha programátorom konvertovať jeden dátový typ na iný dátový typ.