> -----Original Message-----
> From: 
> avr-gcc-list-bounces+eweddington=cso.atmel....@nongnu.org 
> [mailto:avr-gcc-list-bounces+eweddington=cso.atmel....@nongnu.
> org] On Behalf Of Vincent Trouilliez
> Sent: Saturday, February 28, 2009 7:20 PM
> To: avr-gcc-list@nongnu.org
> Subject: Re: [avr-gcc-list] Re: C vs. assembly performance
> 
> On Sat, 28 Feb 2009 19:09:13 -0700
> "Weddington, Eric" <ewedding...@cso.atmel.com> wrote:
> 
> > So in application code I tend to avoid switch statements 
> for embedded systems, unless I'm writing throw-away code or 
> the application is trivial.
> 
> Oh no ! ;-)
> I have only recently got round to using switch statements, to improve
> code legibility. In my current/first embedded project, I 
> happen to have
> a very long (25 cases, 160 lines long) switch statement.. I dread to
> think what it would like if I had to replace it (what else 
> with ?) with
> nested if's !
> How readable would that be... not to mention that with indentation, 25
> levels of nesting would mean the last case would be 3 meters 
> on the far
> right... ;-)
> 
> Any coding tips to make all this look about readable by human
> beings ?! ;-/

You wouldn't need *nested* ifs, but an if-else-if structure, or better yet, a 
table of function pointers, also known as a dispatch table. Each method depends 
on the type of data that you're switching on.


_______________________________________________
AVR-GCC-list mailing list
AVR-GCC-list@nongnu.org
http://lists.nongnu.org/mailman/listinfo/avr-gcc-list

Reply via email to