Type Casting är ett sätt att konvertera en variabel från en datatyp till en annan datatyp. Om du till exempel vill lagra ett långt värde i ett enkelt heltal kan du typcasta long till int. Du kan konvertera värden från en typ till en annan explicit med hjälp av castoperatorn. Det finns två typer av typcastning i c-språket som är Implicita konverteringar och Explicita konverteringar. I den här artikeln lär vi oss också om skillnaden mellan type casting och typkonverteringar.
Ny datatyp bör nämnas före variabelnamnet eller värdet inom parentes som ska typecastas.
C type casting example programme:
I nedanstående C-program kommer enbart 7/5 att ge heltalsvärdet 1.
Så type cast görs före divisionen för att behålla floatvärdet (1,4).
Output:
1.400000
Konvertering av ett uttryck av en viss typ till en annan typ kallas type casting. typecasting är mer användbart i programmering på c-språket.
Här är det bästa tillvägagångssättet att konvertera en lägre datatyp till en högre datatyp för att undvika dataförlust.
Data kommer att avkortas när den högre datatypen konverteras till en lägre. Om till exempel en float konverteras till int kommer data som finns efter decimaltecknet att gå förlorade.
Det finns två typer av type casting i c-språket.
Typer av typecasting i C
Implicit konvertering
Implicita konverteringar kräver ingen operatör för konverterade. De utförs automatiskt när ett värde kopieras till en kompatibel typ i programmet.
Här har värdet på a flyttats från int till double och vi har inte behövt ange någon typomvandlingsoperator. Detta kallas för en standardkonvertering.
Exempel :-
Output:-
implicit värde är 20.
Explicit konvertering
I C-språket kräver många konverteringar, särskilt de som innebär en annan tolkning av värdet, en explicit konvertering. Vi har redan sett två notationer för explicit typkonvertering.
De utförs inte automatiskt när ett värde kopieras till en kompatibel typ i programmet.
Exempel :-
Output:-
Explicit värde är 20.
Utomatisk aritmetisk konvertering
De vanliga aritmetiska konverteringarna utförs implicit för att kasta sina värden i en gemensam typ, C använder regeln att i alla uttryck utom tilldelningar, alla implicita typkonverteringar som görs från en typ av lägre storlek till en typ av högre storlek som visas nedan:
Inbyggda typkastfunktioner i C:
Det finns många inbyggda typkastfunktioner i C-språket som utför datatypkonvertering från en typ till en annan.
Vi håller nyligen på att göra en enkät från olika programmerare som finns på google plus sociala medier. Vi gjorde en undersökning för type casting i c-språket.
Skillnaden mellan type casting och type conversion
När det finns ett behov av att konvertera en datatyp till en annan kommer de två termerna i vårt sinne ”typecasting” och ”type conversion”. När de två typerna är kompatibla med varandra görs konverteringen av den ena typen till den andra automatiskt av kompilatorn, dvs. kall typkonvertering, men om vi minns att vi kan lagra en stor datatyp i den andra, till exempel kan vi inte lagra en float i int, eftersom en float är större än int, måste programmeraren uttryckligen göra typecasting.