Pretvorba tipov je oblika kazivanja tipov, tehnika, ki se uporablja v računalništvo in programiranje računalniške programske opreme, pri kateri se podatkovni tip določene entitete spremeni v drugo vrsto podatkov. Koncept preskakovanje tipov se je pojavil okoli določenega sistema tipov programskega jezika, tako da je mogoče doseči določene učinke, ki bi jih sicer bilo težko izvesti znotraj meja formalne definicije programskega jezika. Pretvorba tipov, ki je najpogostejša oblika prebiranja tipov, je možna v skoraj vseh programskih jezikih, čeprav nekateri jeziki ponujajo dodatne metode prebijanja tipov, kot sta združitev ali reinterpretacija. Nekateri vodniki po programskih slogih predlagajo, da se ne bi uporabljali prebadanje tipov, čeprav se pretvorba tipov tako ali tako pogosto uporablja.
Pretvorbo tipov včasih imenujemo tudi pretvorba tipov ali prisila, odvisno od uporabljenega programskega jezika. Vsak programski jezik ima pravila o tem, kako se lahko uspešno uporablja pretvorba tipov. Na splošno lahko pretvorbe potekajo na osnovnih tipih ali predmetih.
Obstaja več osnovnih podatkovnih tipov ali razredov podatkovnih tipov. Ena pogosta podatkovna vrsta, ki se uporablja v matematičnih operacijah, so cela števila ali navadna števila, ki se lahko gibljejo v tisoče ali milijone, odvisno od števila bitov v njihovi širini. Na primer, 32-bitno celo število se lahko giblje od nič do 4,294,967,295 ali -2,147,483,648 do 2,147,483,648. Druga vrsta je število s plavajočo vejico, ki je v bistvu katero koli število z decimalno vejico.
Kot podatkovni tip lahko uporabite tudi posamezne znake, kot je črka abecede ali ločilo. Podatkovni tip niza je katera koli skupina ali zaporedje številk in/ali črk brez preloma; dolžine nizov so poljubne, vendar je njihova velikost ali omejitev običajno definirana v programskem jeziku. Najstarejši od podatkovnih tipov je Boolean, ki je preprosto resničen ali napačen. Drugi razredi tipov vključujejo algebraične, funkcije, strojne podatke in objekte. Na primer, v objektno usmerjenih jezikih lahko prednik predmeta uporabi tip nadrejenega predmeta, tako da njihova medsebojna interakcija poteka bolj gladko.
Posebnosti pretvorbe tipov res ne pridejo v poštev, dokler se ne upoštevajo pravila določenega programskega jezika. Pravila nekaterih jezikov nadalje narekujejo, ali je pretvorba tipa implicitna ali eksplicitna. Implicitna pretvorba tipa se najpogosteje imenuje prisila in običajno poteka v času, ko je program preveden iz izvorne kode v izvedljiv program. To se lahko zgodi, recimo, če je v izrazu uporabljenih več podatkovnih tipov in se nato izvede primerjava. Pretvorba tipa se šteje za implicitno in jo prevajalnik obravnava samodejno; eksplicitna pretvorba tipa je definirana v kodi programa. Programski jezik C razlikuje med obema in implicitno pretvorbo tipa imenuje prisila, eksplicitno pretvorbo tipa pa cast.
Preprost primer običajne pretvorbe tipov bi bile matematične operacije s številkami v računalniškem programu. Računalniški program, ki kot vhod prejme decimalno število, tip podatkov s plavajočo vejico, bo morda moral pretvoriti število v celoštevilski podatkovni tip za izvajanje matematičnih operacij ali obratno. Ta pretvorba omogoča nadaljevanje operacije.