[ Pobierz całość w formacie PDF ]
.- jeœli nie to jeœli jedenargument jest double drugi przekszta³cany jest dodouble.- jeœli nie to jeœli jedenargument jest float drugi przekszta³cany jest dofloat.- jeœli nie to jeœli jedenargument jest unsigned long drugi przekszta³cany jest dounsigned long- jeœli nie to jeœli jedenargument jest signed long drugi przekszta³cany jest dosigned long- jeœli nie to jeœli jedenargument jest unsigned int drugi przekszta³cany jest dounsigned int- w przeciwnym przypadku obaoperandy s¹ typu int Sposoby wykonywaniakonwersji- char na int powielanie bitu znakudla signed char lub wype³nienie zerami dla unsigned char-short na int ta samawartoœæ- unsigned short na unsigned int ta samawartoœæ-konwersja d³u¿szego typuca³kowitego do mniejszego Odrzucenie bardziejznacz¹cych bitów i w razie ich ustawienia utratainformacji- konwersja miêdzy typamicalkowitymi o tych samych dlugoœciach bezpoœrednieskopiowanie wartoœci jednej zmiennej do drugiej.Warto wiedzieæ, ¿e mo¿na uzyskaæ ciekawe wynikinp.: int -1000 po konwersji do unsigned int 64536 ( bitznaku traktowany jako bit o wadze 2 do 15)- konwersja rzeczywiste naca³kowite odrzucenie czêœciu³amkowej liczby rzeczywistej- konwersja ca³kowite narzeczywiste nadanie odpowiedniejliczbie rzeczywistej wartoœci liczby ca³kowitej- konwersje miêdzy typamirzeczywistymi o ró¿nych rozmiarach zaokr¹glenie donajbli¿szej wartoœci docelowego typu. Oprócz automatycznegoprzekszta³cania typów, w dowolnym wyra¿eniu mo¿na jawnie wymusiæ przekszta³cenietypów za pomoc¹:- jednoargumentowego operatorarzutowania (casting)Operator ten mo¿e mieæ dwieformy: (nazwa_typu) zmienna //forma jêzyka C/C++ -notacja rzutowa nazwa_typu(zmienna) //forma C++ - notacja funkcyjnaNotacja funkcyjna stosowana tylkodo typów które maj¹ prost¹ nazwê. int i; float f; i = (int)f; f = (float) i; i = int(f); f = float (i);
[ Pobierz całość w formacie PDF ]