PDA

Visualizza la versione completa : [C] incremento variabile alfanumerica


skricchi
01-07-2009, 11:35
ciao a tutti,

volevo sapere se qualcuno sa come si può fare l'incremento e il decremento di una variabile alfanumerica in C...
esiste una funzione apposita o devo crearmi io un algoritmo per farlo?

grazie

oregon
01-07-2009, 12:11
Che vuoi dire?

skricchi
01-07-2009, 12:15
devo incrementare un progressivo alfanumerico di due caratteri e penso che il classico operatore di incremento ++ del C non vada tanto bene!
quindi volevo sapere se esiste un modo o una funzione del C che lo fa....

oregon
01-07-2009, 12:15
Come e' fatto questo progressivo ? Come lo dovresti incrementare ?

Dai maggiori informazioni ...

skricchi
01-07-2009, 12:17
praticamente dovrebbe essere un numerico da 0 a 99 e poi iniziare con le lettere tipo

99
A0
A1
...
A9
AA
AB
...
B0
....
e così via

oregon
01-07-2009, 12:21
Originariamente inviato da skricchi
praticamente dovrebbe essere un numerico da 0 a 99 e poi iniziare con le lettere tipo

99
A0
A1
...
A9
AA
AB
...
B0
....
e così via

Dopo il 99 non c'e' il 9A ?

E' un codice esadecimale?

skricchi
01-07-2009, 12:26
si hai ragione....cmq non è esadecimale!

oregon
01-07-2009, 12:32
Ok, ma si comporta come un valore esadecimale a 2 cifre o le lettere vanno oltre la F ?

Le lettere sono sempre due o possono diventare di piu'?

Ti faccio tutte queste domande perche' la tua richiesta non e' completamente chiara e le soluzioni possono essere diverse a seconda delle specifiche.

skricchi
01-07-2009, 12:40
Ok, ma si comporta come un valore esadecimale a 2 cifre o le lettere vanno oltre la F ?

per come lo avevo pensato io le lettere dovrebbero essere tutte, dalla A alla Z.


Le lettere sono sempre due o possono diventare di piu'?

i caratteri sono sempre due.

in pratica io calcolo il valore max da DB (MySQL) e poi dovrei incrementarlo e da DB la sequenza (ho fatto un paio di prove in questo momento!!!) è la seguente:

00
...
09
0A
...
0Z
10
...
19
1A

e così via....
non so se ora sono stata abbastanza chiara!

oregon
01-07-2009, 14:13
Originariamente inviato da skricchi
i caratteri sono sempre due.

Ok ...


non so se ora sono stata abbastanza chiara!

Sì, adesso sei stata chiara.

Ovviamente non potrai utilizzare l'incremento numerico ma dovrai realizzare una funzione specifica per ottenere il valore successivo.

Ti consiglio di operare sui due caratteri della stringa, testandoli singolarmente e aumentandoli secondo le regole che ti sei data, ovvero

0...9 ... A...Z ... (0 e riporto nella "cifra" successiva)

Loading