View Full Version : (c/c++) Da int a char*
Domanda da principiante:
se ho un intero, come lo converto in char*
int n = 11;
char *c = ?n;
AnonimoVeneziano
31-01-2006, 11:52
Lo sai che non ha senso fare quella cosa , vero?
comunque :
c = (char *) n;
Ciao (e in bocca al lupo :D )
Suvvia, non sarò un prodigio ma non sono tanto sfaticato :P
Quel tentativo l'ho fatto, ma ottengo solo un Segmentation Fault, anche allocando prima la memoria per il puntatore.
AnonimoVeneziano
31-01-2006, 12:02
Suvvia, non sarò un prodigio ma non sono tanto sfaticato :P
Quel tentativo l'ho fatto, ma ottengo solo un Segmentation Fault, anche allocando prima la memoria per il puntatore.
Aspetta un attimo
Non ho capito cosa vuoi fare forse .
Quello che tu vuoi fare è fare in modo che il puntatore "*c" punti a quell' int?
In tal caso :
c = (char *) &n;
(Non che abbia molto + senso comunque :D )
Ciao
Mi sono spiegato male io; quello che vorrei ottenere è la rappresentazione della stringa "11" dato l'intero 11 (o qualsiasi altro intero ovviamente). Non è poi così insensato dai...
p.s: segmentation fault :P
gurutech
31-01-2006, 12:41
se non ricordo male devi usare la funzione
itoa
(integer to ascii)
di stdlib.h
AnonimoVeneziano
31-01-2006, 12:45
piuttosto che itoa è meglio usare sprintf .(Sulle manpage di Linux non le trovo, quindi forse c'è qualcosa che non va riguardo a quella funzione :/)
char c[numerocaratteri];
sprintf(c, "%d", n);
Ciao
semplicemente itoa (e atoi) non è ansi-c
piuttosto che itoa è meglio usare sprintf .(Sulle manpage di Linux non le trovo, quindi forse c'è qualcosa che non va riguardo a quella funzione :/)
char c[numerocaratteri];
sprintf(c, "%d", n);
Ciao
io usa sempre itoa...
cmq nn volendo hai aiutato anche me, thanks :p
semplicemente itoa (e atoi) non è ansi-c
atoi è ANSI... itoa no ;)
ecco ammetto di aver parlato senza controllare, per la itoa ero sicuro, per la atoi pensavo valesse la stessa cosa :asd:
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.