PDA

Visualizza la versione completa : [C] Cast int in array char


jonnykaraoke
14-12-2011, 22:26
salve a tutti devo fare un programma che fa uso di stringhe e precisamente della funzione strcat() , il programma
legge da un file un numero(pure a pi cifre) e lo memorizza in una variabile int , poi ho necessita della strcat che mi unisce
due stringhe, di cui la seconda il numero che ha salvato nella variabile, e quindi, mi dia un output come questo:
Il numero letto 14 dove 14 il numero che ha letto dal file... dato che non possibile usare la strcat con valori interi dovrei trasformare l'intero in array di char per poterla usare....e qui mi blocco...come si fa?

oregon
14-12-2011, 22:56
Non che la questione sia chiarissima ma se la domanda alla fine


dovrei trasformare l'intero in array di char per poterla usare....

allora ti basta la funzione

sprintf

jonnykaraoke
15-12-2011, 09:10
non credo faccia al caso mio, poiche ritorna un valore in int.... io ho bisogno di questo

int numero=45 deve diventare-> char array[]={'4','5' }

oregon
15-12-2011, 09:25
Originariamente inviato da jonnykaraoke
non credo faccia al caso mio, poiche ritorna un valore in int.... io ho bisogno di questo

int numero=45 deve diventare-> char array[]={'4','5' }

Forse non l'hai studiata bene la sprintf ... ti consiglio di fare pi attenzione ...

ramy89
15-12-2011, 11:41
Il valore di ritorno il numero di caratteri dei caratteri scritto, o un numero negativo se la funzione fallisce.Non devi vedere il tipo di ritorno, ma l' effetto che ha:



n=sprintf(buffer,"%d",numero);


Questo l' uso corretto, ora buffer, che un array di char, contiene i caratteri del numero letto.Usi n se vuoi controllare se la funzione ha avuto successo o no.

jonnykaraoke
15-12-2011, 13:39
apposto grazie mille!! :)

Loading