PDA

View Full Version : [C]Coversione intero -> stringa


Diego_Armando
29-07-2004, 11:53
Ciao!
E' possibile convertire un intero in una stringa?
In pratica esiste la funzione inversa di atoi(..)?

Devo spedire su una socket, con la funzione send(..) un intero..il problema č che con quella funzione so spedire solo stringhe..come faccio?

Grazie mille..

:mc:

misterx
29-07-2004, 12:15
#include <stdlib.h>
char *itoa(int value, char *string, int radix);




#include <stdlib.h>
#include <stdio.h>

int main(void)
{
int number = 12345;
char string[25];

itoa(number, string, 10);
printf("integer = %d string = %s\n", number, string);
return 0;
}

VegetaSSJ5
29-07-2004, 12:33
la send accetta un puntatore alla variabile (guarda il prototipo). poichč le stringhe si realizzano con untatori a caratteri allora tu nella send passi direttamente il nome della variabile, invece quando si tratta di qualsiasi altro tipo (intero, ma io l'ho usato anche per le strutture) devi passare &vaariabile.int var;
.
.
send(sock, &var, sizeof(var), 0);

ilsensine
29-07-2004, 12:50
Originariamente inviato da misterx
itoa(number, string, 10);

-ENOANSI

misterx
29-07-2004, 13:06
Originariamente inviato da ilsensine
-ENOANSI


ci avrei giurato ma, l'autore non ha specificato nulla

x110
29-07-2004, 17:15
cosa vuol dire?

capisco forse che non e' rispettato lo standard ansi?

DanieleC88
31-07-2004, 17:30
Io mi sono fatto una routine appositamente per quello scopo nel mio OS, ma č un po' artigianale. Sicuramente sarą scritta male, ma funziona bene. Se siete interessati ve la posto.

Poix81
02-08-2004, 08:03
non basta usare:
sprintf(%d, &nomevariabile)

ciao ciao

DanieleC88
03-08-2004, 22:29
non basta usare:
sprintf(%d, &nomevariabile)

forse intendi dire:
sprintf(variabile_del_risultato,"%d",numero_da_convertire);

O mi sbaglio io?

Poix81
04-08-2004, 04:05
Originariamente inviato da DanieleC88
forse intendi dire:
sprintf(variabile_del_risultato,"%d",numero_da_convertire);

O mi sbaglio io?
si, non mi ricordavo bene la sintassi