Jump to content
xisto Community
Sign in to follow this  
jibnet

Typecasting In C++

Recommended Posts

Typecasting is making a variable of one type, such as an int, act like another type, a char, for one single operation. To typecast something, simply put the type of variable you want the actual variable to act as inside parentheses in front of the actual variable. (char)a will make 'a' function as a char.

 

For example:

#include <iostream> using namespace std;int main()	   {  cout<< (char)65 <<"\n";   // The (char) is a typecast, telling the computer to interpret the 65 as a  //  character, not as a number.  It is going to give the character output of   //  the equivalent of the number 65 (It should be the letter A for ASCII).  cin.get();}

One use for typecasting for is when you want to use the ASCII characters. For example, what if you want to create your own chart of all 256 ASCII characters. To do this, you will need to use to typecast to allow you to print out the integer as its character equivalent.

#include <iostream>using namespace std;int main(){  for ( int x = 0; x < 256; x++ ) {	cout<< x <<". "<< (char)x <<" "; 	//Note the use of the int version of x to 	// output a number and the use of (char) to 	// typecast the x into a character 		// which outputs the ASCII character that 	// corresponds to the current number  }  cin.get();}

The typecast described above is a C-style cast, C++ supports two other types. First is the function-style cast:

int main()	   {  cout<< char ( 65 ) <<"\n";   cin.get();}

This is more like a function call than a cast as the type to be cast to is like the name of the function and the value to be cast is like the argument to the function. Next is the named cast, of which there are four:

int main()	   {  cout<< static_cast<char> ( 65 ) <<"\n";   cin.get();}
static_cast is similar in function to the other casts described above, but the name makes it easier to spot and less tempting to use since it tends to be ugly. Typecasting should be avoided whenever possible. The other three types of named casts are const_cast, reinterpret_cast, and dynamic_cast. They are of no use to us at this time.

Notice from serverph:

COPIED without proper QUOTES as reported by Avalon.

Sourced from: http://www.cprogramming.com/tutorial/lesson11.html

Quote tags added.

Share this post


Link to post
Share on other sites

CLOSED.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.