Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Matrici tridimensionali e Char
Forum - C/C++ - Matrici tridimensionali e Char

Avatar
gismo (Normal User)
Rookie


Messaggi: 43
Iscritto: 07/01/2007

Segnala al moderatore
Postato alle 16:28
Mercoledì, 05/09/2007
Ciao a tutti
raga ho un problema..ho una matrice tridimensionale (es. MAT[j][z], z sarebbe 1 o due)..
Questa matrice oltretutto è un'istanza di una classe che ha potenzialmente 2 attributi uno di tipo int e uno d tipo char..
Con l'indice z=1 gestisco il lavoro con la matrice tramite gli attributi interi, mentre con z=2 gestisco la stampa in output stampando i char..
Però ce un piccolo problemino..ad un certo punto del mio programma devo trasferire il valore intero nell'indice z=2 per poi stamparlo..
se eseguo un'assegnazione di attributi (ma cmq anche con variabili normali) char=int non è molto buono, poichè il char interpreta l'int come valore in ASCII sballando completamente l'output..

Domanda con un casting il risultato è il medesimo..come si può fare?
considerate che dovrei asseganre una roba tipo..

Codice sorgente - presumibilmente Plain Text

  1. mat[i][j][2].attr_char=mat[i][j][1].att_int;


insomma quello che vi chiedo è una semplice funzione possibilmente che non lavori con le strighe..cmq prendo tutto :k:

grazie mille fatemi sapere

PM Quote
Avatar
pierotofy (Admin)
Guru^2


Messaggi: 6109
Iscritto: 04/12/2003

Segnala al moderatore
Postato alle 23:55
Mercoledì, 05/09/2007
Prova a dare un'occhiata alla funzione itoa

http://www.mkssoftware.com/docs/man3/itoa.3.asp


Seguimi su Twitter: http://www.twitter.com/pierotofy

Fai quello che ti piace, e fallo bene.
PM Quote
Avatar
gismo (Normal User)
Rookie


Messaggi: 43
Iscritto: 07/01/2007

Segnala al moderatore
Postato alle 10:41
Giovedì, 06/09/2007
grazie mille piero!!
se permetti vorrei farti un'altra piccola domanda..
senza andare troppo fuori topic..cmq..
vorrei allocare dinamicamente la matrice tridimensionale di tipo oggetto..non sono riuscito a trovare un'algoritmo standard per inizializzarla..
dati in input r e c.
quello che dovrei far venir fuori è mat[r+2][c+2][z]..
(aggiungo due all'inserimento dell'utente per problemi legati al programma..)

io credo si debba fare così..
Codice sorgente - presumibilmente Plain Text

  1. mat=new ogg*[r+2];//creo righe
  2.     for(int i=0;i<=r;i++)
  3.        mat[i]=new ogg[c+2];//creo colonne
  4.     for(itn i=0;i<=r;i++)
  5.     for(int j=0;j<c;j++)
  6.        mat[i][j]=new ogg[2]//creo terza dimensione (z)


il tipo ogg sarebbe la classe..
a tal proposito vorrei anche sapere se l'accesso a metodi e attributi rimane uguale alle matrici e varibili statiche..

grazie mille davvero
:D

PM Quote