c data types
Lær alt om Datatyper i C ++ med eksempler.
I dette Fullfør C ++ opplæringsveiledninger , vi vil diskutere datatyper i C ++ i denne opplæringen.
Vi har allerede sett identifikatorer som brukes til å identifisere forskjellige enheter i C ++ etter navn. Bortsett fra identifikatorene, vet vi også at variabelen lagrer informasjon eller data.
For å knytte data til variabelen, må vi også vite hvilke data vi vil knytte nøyaktig, dvs. om variabler bare lagrer alfabeter eller tall eller begge deler. Vi må med andre ord begrense dataene eller informasjonen som skal lagres i en variabel.
Det er akkurat der datatypen kommer inn i bildet. Vi kan si at datatyper brukes til å fortelle variabelen hvilken type data den skal lagre. Basert på datatypen som er tilordnet en variabel, tildeler operativsystemet minne og bestemmer hvilken type data som skal lagres i variabelen.
Hva du vil lære:
Typer data
C ++ støtter to typer data som skal brukes med programmene.
- Primitive / standard datatyper
- Brukerdefinerte datatyper.
Nedenfor er den bildelige representasjonen av datatypene i C ++.
Primitive eller standard datatyper
Primitive datatyper er de innebygde typene som C ++ språk gir. Vi kan bruke dem direkte til å erklære enheter som variabler, konstanter osv. Alternativt kan vi også kalle dem som forhåndsdefinerte datatyper eller standard datatyper.
Følgende er de forskjellige primitive datatypene som C ++ støtter med tilhørende nøkkelord:
- Heltall => int
- Tegn => røye
- Flytepunkt => flyte
- Dobbelt flytpunkt => dobbelt
- Boolsk => boolsk
- Tom eller Verdiløs type => ugyldig
- Bredt tegn => wchar_t
Brukerdefinerte datatyper
I C ++ kan vi også definere våre egne datatyper som en klasse eller en struktur. Disse kalles brukerdefinerte typer.
Ulike brukerdefinerte datatyper i C ++ er listet opp nedenfor:
- Typedef
- Oppregning
- Klasse eller objekt
- Struktur
Av disse typene brukes klassedatatypen eksklusivt med objektorientert programmering i C ++.
Primitive datatyper
Tabellen nedenfor viser alle de primitive datatypene som støttes av C ++ sammen med dens forskjellige egenskaper.
Data-type | C ++ nøkkelord | Verditype |
---|---|---|
Bred karakter | wchar_t | Karakter inkludert Unicode-strenger |
Karakter | røye | Tegn (ASCII-verdier) |
Heltall | int | Numeriske hele tall |
Flytende punkt | flyte | Desimalverdier med en enkelt presisjon |
Desimal tegn | dobbelt | Dobbel presisjon flytende punktverdier |
Boolsk | bool | Sant eller usant |
tomrom | tomrom | Verdiløs (ingen verdi) |
Modifikatorer for datatype
Primitive datatyper som lagrer forskjellige verdier, bruker enheter som kalles datatypemodifikatorer for å endre lengden på verdien de kan ha.
Følgelig er følgende typer datamodifikatorer til stede i C ++:
- Signert
- Usignert
- Kort
- Lang
Utvalget av data som er representert av hver modifikator, avhenger av kompilatoren vi bruker.
Programmet nedenfor produserer forskjellige størrelser av forskjellige datatyper.
#include using namespace std; int main() { cout<<'Primitive datatypes sizes: '< Produksjon:
Primitive datatypestørrelser:
kort int: 2 byte
usignert kort int: 2 byte
int: 4 byte
usignert int: 4 byte
lang int: 8 byte
usignert lang int: 8 byte
lang lang int: 8 byte
usignert lang lang int: 8 byte
røye: 1 byte
signert røye: 1 byte
usignert røye: 1 byte
flyte: 4 byte
dobbelt: 8 byte
lang dobbel: 16 byte
wchar_t: 4 byte
Skjermbilde for denne utgangen er gitt nedenfor.

Som vi ser, ved å bruke størrelsen på operatøren, kan vi få den maksimale størrelsen på data som hver datatype støtter.
Alle disse datatypene og deres tilsvarende størrelser kan tabelliseres som nedenfor.
Data-type Bitbredde Område kort int 2 byte 32768 til 32767 røye 1 byte 127 til 127 eller 0 til 255 usignert røye 1 byte 0 til 255 signert røye 1 byte 127 til 127 int 4 byte 2147483648 til 2147483647 usignert int 4 byte 0 til 4294967295 signert int 4 byte 2147483648 til 2147483647 usignert kort int Område 0 til 65.535 signert kort int Område 32768 til 32767 lang int 4 byte 2.147.483.647 til 2.147.483.647 signert lang int 4 byte samme som lang int usignert lang int 4 byte 0 til 4 294 967 295 flyte 4 byte +/- 3.4e +/- 38 (~ 7 sifre) dobbelt 8 byte +/- 1.7e +/- 308 (~ 15 sifre) lang dobbel 8 byte +/- 1.7e +/- 308 (~ 15 sifre) wchar_t 2 eller 4 byte 1 bred karakter
Dette handler om primitive datatyper i C ++. Brukerdefinerte datatyper
Disse datatypene som navnet antyder er definert av brukeren selv. Siden de er brukerdefinerte, kan de tilpasses i henhold til programmets krav.
Typedef
Ved å bruke typedef-erklæringen oppretter vi et alias eller et annet navn for datatypen. Da kan vi bruke dette aliaset til å erklære flere variabler.
Tenk for eksempel på følgende erklæring i C ++:
typedef int age;
Gjennom denne erklæringen har vi opprettet en aliasalder for int-datatypen.
Derfor, hvis vi vil erklære noe lignende, kan vi bruke aliaset i stedet for standard datatype som vist nedenfor:
age num_of_years;
Merk at alias bare er et annet navn for standard datatype, det kan brukes på en lignende måte som standard datatyper.
Oppregning
Oppregningen i C ++ er en brukerdefinert datatype som består av et verdisett med tilsvarende integralkonstanter for hver verdi.
For eksempel kan vi erklære ukedagene som en oppregnet datatype som vist nedenfor:
enum daysOfWeek {Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday};
Som standard starter integrerte konstanter for hver av enumverdien med null. Så 'søndag' har verdi 0, 'mandag' har 1 og så videre.
Imidlertid kan vi også endre standardverdiene fra starten av mellomtiden som følger:
enum daysOfWeek {Sunday, Monday, Tuesday=5, Wednesday, Thursday, Friday, Saturday};
Her vil søndag ha verdi 0, mandag vil ha verdi 1, og tirsdag vil ha verdi 5 som vi har tildelt. Etter tirsdag vil gjenværende verdier ha 6, 7 og så videre i fortsettelse med den forrige verdien (i dette tilfellet 5).
La oss gjøre bruk av dette enum som vi erklærte tidligere i følgende program:
#include using namespace std; enum daysOfWeek {Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday}; int main() { daysOfWeek today; today = Thursday; cout<<'This is day '< Produksjon:
Dette er dag 4 i uken
Skjermbilde for det samme er gitt nedenfor

Ovennevnte program er selvforklarende. Vi har definert enum, og så lager vi dens type variabel for å sende ut ukedagen.
Klasse
I C ++ kan vi definere enda en brukerdefinert type som heter 'Klasse'. Klasse er ikke annet enn en samling objekter. Klasse fungerer som en blåkopi for et objekt, og ved hjelp av klassedefinisjonen kan vi designe ulike sanntidsproblemer.
c ++ pause i 1 sekund
Tenk for eksempel på en klasse med navnet “Student” som vil bli definert som følger:
class student{ char* name; int age; public: void printDetails() { cout<<”Name: “<Når vi har definert denne klassen, kan vi bruke klassenavnet til å erklære variabler av typen klasse. Disse variablene av typeklassen er ikke annet enn objekter.
Så vi erklærer et objekt av typen student som følger:
student s1; s1.printDetails();
Som vist ovenfor kan vi også få tilgang til medlemmene i denne klassen som er offentlige. Vi vil se klassene og objektene i detalj når vi dekker objektorientert programmering i C ++.
Struktur
En struktur i C ++ er lik den i C>. Faktisk blir konseptet med struktur i C ++ hentet direkte fra C-språket. Som klasse er strukturen også en samling av variabler av forskjellige datatyper. Men klassen har både variabler og metoder som fungerer på disse variablene eller medlemmene som vi kaller dem.
Strukturer, derimot, har bare variabler som sine medlemmer.
Vi kan definere en strukturperson på følgende måte ved hjelp av struct-nøkkelordet:
struct employee{ Char name(50); Float salary; Int empId; };
Når strukturen er definert, kan vi erklære en variabel av typen struct som følger:
Employee emp;
Deretter kan vi få tilgang til medlemmene i strukturen ved hjelp av strukturvariabelen og medlemstilgangsoperatøren (dot Operator).
Konklusjon
Vi vil lære mer om struktur og klasse og forskjellene mellom dem når vi begynner med den objektorienterte programmeringen i C ++.
I vår kommende opplæring vil vi utforske C ++ variabler og dens andre aspekter.
=> Sjekk In-Depth C ++ Training Tutorials Here
Anbefalt lesing
- Python datatyper
- Typer av migrasjonstesting: Med testscenarier for hver type
- Dataabstraksjon i C ++
- Topp 10 Data Science-verktøy i 2021 for å eliminere programmering
- JMeter-dataparameterisering ved bruk av brukerdefinerte variabler
- 10+ beste datainnsamlingsverktøy med strategier for datainnsamling
- Objektorientert programmering i C ++
- 10+ beste datastyringsverktøy for å oppfylle dine behov i 2021