Em uma biblioteca personalizada, vi uma implementação:
inline int is_upper_alpha(char chValue)
{
if (((chValue >= 'A') && (chValue <= 'I')) ||
((chValue >= 'J') && (chValue <= 'R')) ||
((chValue >= 'S') && (chValue <= 'Z')))
return 1;
return 0;
}
Isso é um ovo de Páscoa ou quais são as vantagens do método C / C ++ padrão?
inline int is_upper_alpha(char chValue)
{
return ((chValue >= 'A') && (chValue <= 'Z'));
}
'J' - 'I'
e 'S' - 'R'
ambos iguais 1
, então espero que um otimizador razoável gire o primeiro no segundo.