PDA

View Full Version : [C]gestione stringhe


mto89
30-10-2008, 14:12
ciao ho un problema, ho un array:
char PROVA[2][10]

poi l'assegnazione di valori tramite :
for(k=0;k<=2;k++)
PROVA[k]=("prova %d",k);

però il compilatore mi da errore nella riga sopra perché??
come devo fare per lavorare con i valori delle stringhe?

ndakota
30-10-2008, 15:04
edit

fbcyborg
30-10-2008, 15:15
Le stringhe in C sono viste come array di caratteri.
Non capisco perché vuoi dichiarare una matrice 2x10.

Inoltre, che tipo di assegnazione stai cercando di fare?
PROVA[k]=("prova %d",k);
Che vuol dire questa cosa?

tglman
30-10-2008, 15:22
Credo che quei %d siano riferiti alla funzione sprintf (http://www.cplusplus.com/reference/clibrary/cstdio/sprintf.html)

pero il codice doveva essere:
[CODE]
sprintf(PROVA[k],"prova %d",k);
[CODE]

il c nn ha operatori che lavorano direttamente su stringhe visto che è un linguaggio a basso livello, ma ci sono delle funzioni fatte proprio per questo ;)

mto89
30-10-2008, 16:50
mi spiego meglio, vorrei un array composto da un tot di parole, dopo di che vorrei che il sistema assegnasse a esse il nome parola1, parola2, parola3....usando un contatore, solo che non capisco come si facci ad assegnare un valore a una stringa

tglman
30-10-2008, 17:49
appunto sprintf è quello che inserisce il valore nella stringa!!!

in c una stringa e soltanto un array di char, quindi o usi una funzione che lo fa per te o assegni carattere per carattere nell'array!!

cionci
30-10-2008, 19:47
Attento al titolo: http://www.hwupgrade.it/forum/showthread.php?t=1649196