Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Home » Tip Bank » C++
Language: C++
Expertise: Beginner
Apr 14, 2000

Switching a Statement with a Char Array

Question:
I can't seem to get the switch statement to work with chars. For example:
#include 

char answer[2];

void main()
{
	cout << "Enter your answer: ";
	cin >> answer;

	switch(answer)
	{
	case 'a' : cout << "blah"; 
		break;
	case 'b' : cout << "blah blah";
		break;
	case 'c' : cout << "blah blah blah";
		break;
	case 'd' : cout << "blah blah blah blah";
		break;
	}
}
Trying to compile this would give me an error saying that the "switch expression of type 'char [2]' is illegal" and that it requires an "integral expression".

Answer:
Your compiler is trying to tell you that you can't use an array (or any other non-integral data type) in a switch statement. Either change your declaration of the variable answer to:

  char answer; // a single char 
Or, if you need an array, use if statements instead of a switch.
DevX Pro
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date