• Support PF! Buy your school textbooks, materials and every day products Here!

C language

  • Thread starter shauns87
  • Start date
  • #1
14
0
What is the difference between switch statement and if statement?
 

Answers and Replies

  • #2
Borek
Mentor
28,404
2,802
Let's start from the very beginning. What are they used for? What is the syntax in each case?
 
  • #3
14
0
Switch: tests the value of a given variable against a list of case values and when a match is found, a block of statements associated with that case is executed.

If Else: If the test value is true, then the true block statements following the if are executed.

Now, the point is that I feel that both are the same and can be used interchangeably.

Am i right?
 
  • #4
297
2
Here's something you can't do with a switch statement:

Code:
if (x > 10)
{
    // Do something
}
else if (x < 0)
{
    // Do something else
}
else
{
    // etc...
}
So not really interchangeable in quite a few cases. An if can do what a switch can (though maybe less clearly and possibly less easy for the compiler to optimize). But a switch can't do everything an if statement can.
 
  • #5
chiro
Science Advisor
4,790
131
Switch: tests the value of a given variable against a list of case values and when a match is found, a block of statements associated with that case is executed.

If Else: If the test value is true, then the true block statements following the if are executed.

Now, the point is that I feel that both are the same and can be used interchangeably.

Am i right?
Switch statement compares a result with specific values. The if statement is a more general test that allows you to use more general tests for each if statement and more any subsequent elseif statement.
 
  • #6
14
0
wow, thanks!
 

Related Threads on C language

  • Last Post
Replies
6
Views
2K
  • Last Post
Replies
13
Views
2K
  • Last Post
Replies
1
Views
4K
  • Last Post
Replies
1
Views
812
Replies
8
Views
487
  • Last Post
Replies
1
Views
2K
  • Last Post
Replies
1
Views
669
  • Last Post
Replies
0
Views
2K
Replies
1
Views
2K
  • Last Post
Replies
1
Views
2K
Top