Datatyper i C#: Double, Heltall, Float, Char
⚡ Smart oppsummering
Datatyper i C# definerer hva slags verdier en variabel kan holde, alt fra heltall og flyttall til boolske verdier og strengverdier, og de bestemmer hvor mye minne hver variabel reserverer under programkjøring.

Hva er datatyper i C#?
C#-språket kommer med et sett med grunnleggende datatyper. Disse datatypene brukes til å bygge verdier som brukes i en applikasjon. La oss utforske de grunnleggende datatypene som er tilgjengelige i C#. For hvert eksempel vil vi bare endre hovedfunksjonen i Program.cs-filen vår.
1) Heltall
Datatyper med heltall brukes til å arbeide med tall. I dette tilfellet er tallene hele tall som 10, 20 eller 30. I C# er datatypen merket med Int32 nøkkelord. Nedenfor er et eksempel på hvordan denne datatypen kan brukes. I vårt eksempel vil vi definere en Int32-variabel kalt num. Vi vil da tilordne en heltallsverdi til variabelen og vise den deretter.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Int32 num=30; Console.Write(num); Console.ReadKey(); } } }
Code Forklaring:-
- Datatypen Int32 er spesifisert for å deklarere en heltallsvariabel kalt num. Variabelen blir deretter tildelt en verdi på 30.
- Til slutt brukes console.write-funksjonen til å vise nummeret til konsollen.
Hvis koden ovenfor er skrevet inn riktig og programmet kjøres vellykket, vil følgende utdata vises.
Utgang:
Fra utgangen kan du tydelig se at heltallsvariabelen kalt num ble vist i konsollen
2) Double
En dobbel datatype brukes til å arbeide med desimaler. I dette tilfellet er tallene hele tall som 10.11, 20.22 eller 30.33. I C# er datatypen betegnet med nøkkelordet "Double". Nedenfor er et eksempel på denne datatypen.
I vårt eksempel vil vi definere en dobbel variabel kalt num. Vi vil da tildele en Double verdi til variabelen og vis den deretter.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { double num=30.33; Console.Write(num); Console.ReadKey(); } } }
Code Forklaring:-
- Den doble datatypen er spesifisert for å deklarere en dobbel type variabel kalt num. Variabelen blir deretter tildelt en verdi på 30.33.
- Til slutt brukes console.write-funksjonen til å vise nummeret til konsollen.
Hvis koden ovenfor er skrevet inn riktig og programmet kjøres vellykket, vil følgende utdata vises.
Utgang:
Fra utgangen kan du tydelig se at den doble variabelen kalt num ble vist i konsollen
3) Boolsk
En boolsk datatype brukes til å arbeide med boolske verdier av sant og usant. I C# er datatypen betegnet med det boolske nøkkelordet. Nedenfor er et eksempel på at denne datatypen kan brukes.
I vårt eksempel vil vi definere en boolsk variabel kalt "status". Vi vil da tilordne en boolsk verdi til variabelen og deretter vise den deretter.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Boolean status=true; Console.Write(status); Console.ReadKey(); } } }
Code Forklaring:-
- Den boolske datatypen er spesifisert for å erklære en boolsk variabel kalt "status". Variabelen tildeles deretter verdien sann/falsk.
- Til slutt brukes console.write-funksjonen til å vise den boolske verdien til konsollen.
Hvis koden ovenfor er angitt riktig og programmet kjøres vellykket, vil utdataene vises.
Utgang:
Fra utdata kan du tydelig se at den boolske variabelen som er lik sann ble vist i konsollen
4) String
En strengdatatype brukes til å arbeide med strengverdier. I C# er datatypen betegnet med nøkkelordet 'String'. Nedenfor er et eksempel på denne datatypen.
I vårt eksempel vil vi definere en strengvariabel kalt "melding". Vi tilordner deretter en strengverdi til variabelen og viser den deretter.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class program { static void Main(string[] args) { String message="Hello"; Console.Write(message); Console.ReadKey(); } } }
Code Forklaring:-
- Strengdatatypen er spesifisert for å deklarere en strengvariabel kalt melding. Variabelen blir deretter tildelt verdien "Hello".
- Til slutt brukes console.write-funksjonen til å vise strengverdien til konsollen.
Hvis koden ovenfor er angitt riktig og programmet kjøres vellykket, vil utdataene vises.
Utgang:
Fra utgangen kan du tydelig se at strengvariabelen kalt melding ble vist i konsollen
Komplett liste over C#-datatyper
De fire eksemplene ovenfor dekker de vanligste typene, men C# tilbyr et komplett sett med innebygde verdidatatyper. Hver type reserverer en fast mengde minne og aksepterer et spesifikt verdiområde, så å velge den minste typen som trygt passer til dataene dine holder et program effektivt.
| Data-type | Størrelse | Rekkevidde / Description |
|---|---|---|
| byte | 1 bytes | 0 til 255 |
| kort | 2 bytes | -32,768 til 32,767 |
| int (Int32) | 4 bytes | -2,147,483,648 til 2,147,483,647 |
| lang | 8 bytes | Svært store hele tall (±9.2 kvintillioner) |
| flyte | 4 bytes | Desimaltall med omtrent 6–7 sifres presisjon |
| dobbelt | 8 bytes | Desimaltall med omtrent 15–16 sifres presisjon |
| desimal | 16 bytes | Høypresisjonsdesimaler (28–29 sifre) for penger |
| chariot | 2 bytes | Et enkelt Unicode-tegn |
| bool | 1 bytes | sant eller usant |
Ved siden av disse verditypene er strengtypen den mest brukte referansetypen og lagrer en sekvens av tegn av en hvilken som helst lengde. Å velge en passende type forhindrer overløpsfeil og unødvendig minnebruk.
Verdityper vs. referansetyper i C#
Alle C#-datatyper faller inn i en av to grupper: verdityper og referansetyper. Dette skillet styrer hvordan C# lagrer dataene og hvordan en variabel oppfører seg når du kopierer den eller sender den til en metode.
- Verdityper: Disse lagrer de faktiske dataene direkte, vanligvis på stakken. int, double, bool, char, enum, og struct er verdityper. Å tilordne én variabel til en annen kopierer verdien, slik at de to variablene forblir uavhengige.
- Referansetyper: Disse lagrer en referanse (en minneadresse) som peker til data på heapen. streng-, objekt-, array- og klasseinstanser er referansetyper. Kopiering av en referansevariabel kopierer bare adressen, slik at begge variablene deler det samme objektet.
En verditypevariabel kan aldri være null fordi den alltid har en verdi, mens en uinitialisert referansetype har standardverdien null. Å forstå denne forskjellen hjelper deg med å forutsi hvordan endringer i data flyter gjennom et program.
Typekonvertering i C#
C# trenger ofte å flytte en verdi fra én datatype til en annen, for eksempel å gjøre brukerinput, som alltid er tekst, om til et tall. Denne prosessen kalles typekonvertering, og det skjer på tre hovedmåter.
- Implisitt konvertering: Kompilatoren konverterer automatisk når det ikke er noen risiko for datatap, for eksempel når man tilordner et heltall til en double. Ingen spesiell syntaks er nødvendig.
- Eksplisitt konvertering (casting): Du plasserer måltypen i parentes, for eksempel (int)myDoubleCasting kan miste data – å konvertere en dobbel til et heltall mister desimaldelen – så du aksepterer risikoen bevisst.
- Hjelpemetoder: Convert-klassen (Convert.ToInt32) og hver types Parse-metode (int.Parse) gjør strenger om til tall, mens ToString gjør verdier om til lesbar tekst igjen.
Å velge riktig konvertering holder dataene nøyaktige og forhindrer kjøretidsfeil når typene på hver side av en tildeling ikke samsvarer.








