Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
05/30/12 04:04
Read: times


 
#187579 - Switch Break.
Responding to: ???'s previous message
Justin Fontes said:
Why was the switch introduced if no example can be provided to be used within this context, other than to have completeness? Just another form of short-circuit evaluation, right?


If one makes reference to where break can be used then it is certainly in the sense of completeness to mention the usage in the switch statement as well as in the various looping structures.

Switch defines a block of code that has multiple entry points. Entry point selection is based upon the switch variable value. Once the execution path has vectored to one of the labeled entry points (the case statement locations) the code execution flow will proceed in a normal manner to the end of the code block. At any point one can introduce a break that causes the execution flow to stop in the block and proceed to the point past the end of the code block. If one wants each entry point to be its own set of code then there would be a break in the block at the end of each case section of of the code block. (There may very well be cases where this is not strictly true if the case block ends with some type of loop or iteration statement. In this case the break for that may need to be located inside the iterative structure. Breaks also play an part in early exit from a case block. In this latter situation the break may be part of a conditional statement.

Michael Karas
tructure.

List of 33 messages in thread
TopicAuthorDate
Where can one learn Intermediate C techniques for 8051            01/01/70 00:00      
   on the right track            01/01/70 00:00      
      one more thing            01/01/70 00:00      
         Not uncommon bid bad coding standards to comply with            01/01/70 00:00      
         Not afraid of globals, but...            01/01/70 00:00      
   More keil optimizer interesting tidbits            01/01/70 00:00      
      optimization            01/01/70 00:00      
      nothing gained, nothing lost            01/01/70 00:00      
         I don't            01/01/70 00:00      
            you can do both            01/01/70 00:00      
               That is not helping the compiler            01/01/70 00:00      
                  exact same            01/01/70 00:00      
                     Technically, they are not the same            01/01/70 00:00      
                        Hmmm...            01/01/70 00:00      
                        C don't do full evaluation of logical expressions            01/01/70 00:00      
                           In discrete mathematics proving one is not a proof            01/01/70 00:00      
                              Lazy evaluation demanded            01/01/70 00:00      
                                 I have learned something new because of this            01/01/70 00:00      
                                    me too            01/01/70 00:00      
                                       Very Important            01/01/70 00:00      
                              Breaks.            01/01/70 00:00      
                                 Compile the code            01/01/70 00:00      
                                    To be more exact            01/01/70 00:00      
                                       Stop It!!            01/01/70 00:00      
                                          That is exactly what I intended            01/01/70 00:00      
                                             Switch Break.            01/01/70 00:00      
               obfusciating code to help the compiler is a VERY bad idea            01/01/70 00:00      
                  the source of this            01/01/70 00:00      
   Where can one learn Intermediate C techniques for 8051            01/01/70 00:00      
   Getting the least out of your compiler            01/01/70 00:00      
      Maybe IAR should follow their own advice?            01/01/70 00:00      
         provided the case ...            01/01/70 00:00      
            Compilers not knowing the target chip.            01/01/70 00:00      

Back to Subject List