Должна ли реализация С++ задавать символы 0 '-' 9 'для непрерывных числовых значений, т.е. так:
'0' -> 0+n
'1' -> 1+n
m -> m+n
'9' -> 9+n
Я не могу найти это в документации isdigit
([классификация] (22.3.3.1 Классификация символов)) *,
и я не могу найти его в документации по локали (но, возможно, я не выглядел достаточно сложно).
В 2.3 наборах символов мы находим, что
Основной набор символов источника состоит из 96 символов: символ пробела, символы управления, представляющие горизонтальная вкладка, вертикальная вкладка, подача формы и новая строка плюс следующие 91 графический символ
Но он не упоминает о каком-либо заказе (но, возможно, я не выглядел достаточно сложно).
*: Интересная сноска:
При использовании в цикле быстрее кэшировать ctype < > facet и использовать его непосредственно [вместо isdigit() et al, end comment] или использовать векторную форму ctype < > :: is.