Deve un'implementazione C++ impostare i chars '0' - '9' di avere valori numerici contigui, vale a dire in modo che:Le cifre dei caratteri ['0' .. '9'] sono necessarie per avere valori numerici contigui?
'0' -> 0+n
'1' -> 1+n
m -> m+n
'9' -> 9+n
io non riesco a trovarlo menzionato nella documentazione di isdigit
([classificazione] (22.3. 3.1 Classificazione dei caratteri)) *, né posso trovarlo nella documentazione locale (ma forse non sembravo abbastanza difficile).
In 2.3 Set di caratteri, troviamo che
L'insieme dei caratteri fonte di base consiste di 96 caratteri: il carattere di spazio, i caratteri di controllo rappresentano scheda orizzontale, scheda verticale, mangimi forma, e di nuova riga , oltre ai seguenti 91 caratteri grafici
Ma non menziona alcun ordinamento (ma forse non mi sembra abbastanza difficile).
*: nota interessante c'è:
Quando utilizzato in un ciclo, è più veloce per memorizzare nella cache il ctype <> sfaccettatura e utilizzarlo direttamente [invece di isdigit() et al, fine commento], o utilizzare il modulo vettoriale di ctype <> :: is.
Perché il voto per la chiusura: "Questa domanda non è adatta al nostro formato di domande e risposte. Ci aspettiamo che le risposte coinvolgano generalmente fatti, riferimenti o competenze specifiche; questa domanda richiederà probabilmente opinioni, dibattiti, discussioni, sondaggi o discussioni estese. Ho fatti, riferimenti, competenze specifiche e la risposta probabilmente non coinvolgerà l'opinione, il dibattito, l'argomentazione, il sondaggio, ma prorogherà un riferimento nello standard quindi nessuna discussione estesa? Qualcuno ha un alto potere mod? –
Non è nella roba locale, perché deve occuparsi anche di altre cifre. (Ad esempio 'Ⅿ';)) – MSalters