In C: char x[ ] = "esempio" si puo' modificare?

di il
2 risposte

In C: char x[ ] = "esempio" si puo' modificare?

Salve a tutti,
sono un novellino del C e non riesco a capire perche' il compilatore non mi permette di fare una cosa del genere:

char x[] = "mango"
....stampa x
x = "Gino"

la lunghezza dell'array non e' variabile? ho devo allocare memoria(MALLOC)? non capisco

2 Risposte

  • Re: In C: char x[ ] = "esempio" si puo' modificare?

    Ciao,

    non hai bisogno di allocare memoria, non con una struttura di tipo 'char []'.
    Al momento della dichiarazione il compilatore C può inizializzare un'area di memoria contigua (gli array per intenderci!), ma nell'esecuzione del programma necessita di funzioni predefinite (solo per i 'char []'), come 'strcpy()' e 'strncpy()' che sono contenute in 'string.h'.

    Es.

    char x[] = "mango";
    // n statements
    strcpy(x, "Gino");

    Ciao

    Don't be worry, is only a piece
  • Re: In C: char x[ ] = "esempio" si puo' modificare?

    Ok,quindi devo usare strcpy.grazie mille!!!!
Devi accedere o registrarti per scrivere nel forum
2 risposte