C- TypeCasting

C- TypeCasting

Typecasting i C er prosessen med å konvertere en datatype til en annen datatype av programmereren ved å bruke casting-operatøren under programdesign.

I typecasting kan destinasjonsdatatypen være mindre enn kildedatatypen når du konverterer datatypen til en annen datatype, derfor kalles det også innsnevringskonvertering.

Syntaks:

int x; float y; y = (float) x; 

Typer typestøping i C

I C er det to hovedtyper for å utføre typestøping.

Type støping i C
  • Implisitt type støping
  • Eksplisitt type casting

1. Implisitt typecasting

Implisitt type casting i C brukes til å konvertere datatypen til en hvilken som helst variabel uten å bruke den faktiske verdien som variabelen har. Den utfører konverteringene uten å endre noen av verdiene som er lagret i datavariabelen. Konvertering av lavere datatype til høyere datatype vil skje automatisk.

Heltallsopprykk vil først bli utført av kompilatoren. Etter det vil den avgjøre om to av operandene har forskjellige datatyper. Ved å bruke hierarkiet nedenfor vil konverteringen se ut som følger hvis de begge har forskjellige datatyper:

Implisitt type casting

2. Eksplisitt type casting

Det er noen tilfeller der hvis datatypen forblir uendret, kan den gi feil utdata. I slike tilfeller kan typecasting bidra til å få riktig utgang og redusere kompileringstiden. Ved eksplisitt typecasting må vi tvinge frem konverteringen mellom datatyper. Denne typen casting er eksplisitt definert i programmet.

Program 1:

C




// 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;> }>

Produksjon:

The result is 7.000000 

Forklaring: Her er den faktiske produksjonen som trengs 7 500 000 , men resultatet er 7 000 000 . Så for å få riktig utgang er en måte å endre datatypen til en gitt variabel. Men riktig utgang kan også gjøres ved typecasting . Dette består av å sette et par parenteser rundt navnet på datatypen som divisjon = (flyte) a/b .

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;> }>

Produksjon

The result of Implicit typecasting is d The result of Explicit typecasting is 7.500000 

Forklaring: I ovennevnte C-program, uttrykket (dobbelt) konverterer variabel a fra type int å skrive dobbelt før operasjonen.

I C-programmering er det 5 innebygde støpefunksjoner.

  • atof(): Denne funksjonen brukes til å konvertere strengdatatypen til en flytende datatype.
  • atbol(): Denne funksjonen brukes til å konvertere strengdatatypen til en lang datatype.
  • Kvele(): Denne funksjonen brukes til å konvertere den lange datatypen til strengdatatypen.
  • itoba() : Denne funksjonen brukes til å konvertere en int-datatype til en strengdatatype.
  • slepe() : Denne datatypen brukes til å konvertere strengdatatypen til en int-datatype.

Fordeler med typestøping

  • Type casting i C-programmering gjør programmet veldig lett.
  • Typerepresentasjon og hierarkier er noen funksjoner vi kan dra nytte av ved hjelp av typecasting.
  • Typecasting hjelper programmerere med å konvertere en datatype til en annen datatype.