logo

Odlewanie typu C

Typecasting w C to proces konwertowania jednego typu danych na inny typ danych przez programistę przy użyciu operatora rzutowania podczas projektowania programu.

W przypadku rzutowania typów docelowy typ danych może być mniejszy niż źródłowy typ danych podczas konwersji typu danych na inny typ danych, dlatego nazywa się to również konwersją zawężającą.



Składnia:

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

Rodzaje odlewania typów w C

W C istnieją dwa główne typy do wykonywania rzutowania typów.

Wpisz Casting w C
  • Niejawne rzutowanie typu
  • Jawne rzutowanie typu

1. Niejawne rzutowanie typu

Niejawne rzutowanie typów w C służy do konwertowania typu danych dowolnej zmiennej bez użycia rzeczywistej wartości przechowywanej przez zmienną. Wykonuje konwersje bez zmiany wartości przechowywanych w zmiennej danych. Konwersja niższego typu danych na wyższy typ danych nastąpi automatycznie.



Promocja liczb całkowitych zostanie najpierw przeprowadzona przez kompilator. Następnie zostanie ustalone, czy dwa z operandów mają różne typy danych. Korzystając z poniższej hierarchii, konwersja wyglądałaby następująco, jeśli oba miały różne typy danych:

wielowątkowość w Javie
Niejawne rzutowanie typu

2. Jawne rzutowanie typów

W niektórych przypadkach, jeśli typ danych pozostanie niezmieniony, może dać nieprawidłowe dane wyjściowe. W takich przypadkach rzutowanie może pomóc w uzyskaniu prawidłowego wyniku i skróceniu czasu kompilacji. W przypadku jawnego rzutowania typów musimy wymusić konwersję między typami danych. Ten rodzaj odlewania jest wyraźnie zdefiniowany w programie.

Program 1:



C

przemysł i fabryka




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

>

>

Wyjście:

The result is 7.000000>

Wyjaśnienie: Tutaj rzeczywista wymagana moc wyjściowa wynosi 7,500000 , ale wynik jest 7 000 000 . Aby uzyskać poprawny wynik, jednym ze sposobów jest zmiana typu danych danej zmiennej. Ale prawidłowe wyjście można również wykonać za pomocą typowanie . Polega to na umieszczeniu pary nawiasów wokół nazwy typu danych, np dzielenie = (zmiennoprzecinkowa) a/b .

maszynopis każdy

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

>

>

losowy brak generatora w Javie
Wyjście

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

Wyjaśnienie: W powyższym programie C wyrażenie (podwójnie) konwertuje zmienną a z typu wew pisać podwójnie przed operacją.

W programowaniu w języku C dostępnych jest 5 wbudowanych funkcji rzutowania typu.

  • atof(): Ta funkcja służy do konwersji typu danych typu string na typ danych zmiennoprzecinkowy.
  • atbol(): Ta funkcja służy do konwersji typu danych typu string na typ danych długi.
  • Dusić(): Ta funkcja służy do konwersji długiego typu danych na typ danych typu string.
  • itoba() : Ta funkcja służy do konwersji typu danych int na typ danych string.
  • holowniczy() : Ten typ danych służy do konwersji typu danych typu string na typ danych int.

Zalety odlewania typów

  • Rzutowanie typów w programowaniu C sprawia, że ​​program jest bardzo lekki.
  • Reprezentacja typów i hierarchie to niektóre funkcje, z których możemy skorzystać przy pomocy rzutowania typów.
  • Rzutowanie typów pomaga programistom konwertować jeden typ danych na inny.