Hatred's Log Place

DON'T PANIC!

Apr 4, 2010 - 1 minute read - Comments - programming

Интересная нотация switch/case в gcc

Относится к расширениям gcc, не претендует на переносимость, но все же: в gcc у case можно указывать диапазоны значений:

case LOWVAL ... HIVAL:

Например:

switch(var) 
{
     case 0 ... 2:
        /* какой-то код */
        break;
     case 3 ... 5:
        /* какой-то другой код */
        break;
     default:
        /* что делаем, когда ничего не помогает */
}

этот код эквивалентен такому:

switch(var) 
{
     case 0:
     case 1:
     case 2:
        /* какой-то код */
        break;
     case 3:
     case 4:
     case 5:
        /* какой-то другой код */
        break;
     default:
        /* что делаем, когда ничего не помогает */
}

ЗЫ про одно полезное расширение gcc я уже писал: 0b00100100

Tags: gcc programming

Qt Creator и Generic Projects OpenSource #058

comments powered by Disqus