Hva er typen konvertering?
Typekonvertering er en form for type punning, en teknikk som brukes i informatikk og programmering av programvare der datatypen til en bestemt enhet blir endret til en annen datatype. Begrepet type punning kom til å arbeide rundt det spesifiserte typesystemet for et programmeringsspråk, slik at visse effekter kan oppnås som ellers ville være vanskelig å gjøre innenfor rammen for programmeringsspråkets formelle definisjon. Typekonvertering, som er den vanligste formen for type punning, er mulig i praktisk talt alle programmeringsspråk, selv om noen språk tilbyr flere metoder for type punning, for eksempel union eller re tolking. Enkelte guider for programmeringsstiler foreslår mot type punning, selv om typekonvertering ofte brukes uansett.
Typekonvertering blir også noen ganger referert til som typekasting eller tvang, avhengig av hvilket programmeringsspråk som brukes. Hvert programmeringsspråk har regler for hvordan konvertering av type kan brukes vellykket. Generelt sett kan konverteringer finne sted på enten grunnleggende typer eller objekter.
Det er flere grunnleggende datatyper eller klasser av datatyper. En vanlig datatype som brukes i matematiske operasjoner er heltall, eller vanlige tall, som kan variere i tusenvis eller millioner, avhengig av antall biter i bredden. For eksempel kan et 32-bits heltall være fra null til 4.294.967.295 eller -2.147.483.648 til 2.147.483.648. En annen type er det flytende punkttallet, som i utgangspunktet er et hvilket som helst tall med et desimal.
Enkelt tegn, for eksempel en bokstav i alfabetet eller et tegnsettingsmerke, kan også brukes som datatype. En strengdatatype er en hvilken som helst gruppe eller sekvens av tall og / eller bokstaver uten pause; strenglengder er vilkårlige, men størrelsen eller grensen er vanligvis definert i programmeringsspråket. Den eldste av datatypene er den boolske, som ganske enkelt enten er sant eller usant. Andre klasser av typer inkluderer algebraisk, funksjoner, maskindata og objekter. For eksempel, på objektorienterte språk, kan forfaren til et objekt bruke typen et overordnet objekt, slik at interaksjonen deres med hverandre går jevnere.
Spesifikasjonene for konvertering av type kommer virkelig ikke i spill før reglene for et bestemt programmeringsspråk er tatt i betraktning. Noen språk regler dikterer videre om en type konvertering er implisitt eller eksplisitt. En implisitt type konvertering kalles hyppigst en tvang og skjer vanligvis på det tidspunktet et program blir satt sammen fra kildekode til et kjørbart program. Dette kan for eksempel skje hvis flere datatyper brukes i et uttrykk og deretter utføres en sammenligning. Typekonvertering anses som underforstått, og kompilatoren håndterer den automatisk; en eksplisitt typekonvertering er definert i koden til programmet. C-programmeringsspråket skiller mellom de to, kaller en implisitt typekonvertering en tvang, og en eksplisitt typekonvertering et rollebesetning.
Et enkelt eksempel på en konvertering av vanlig type ville være matematiske operasjoner på tall i et dataprogram. Et dataprogram som mottar et desimalnummer, en flytende punktdatatype, som inndata kan trenge å konvertere nummeret til en heltal datatype for å utføre matematiske operasjoner, eller omvendt. Denne konverteringen lar operasjonen fortsette.