Copiare due stringhe

di il
2 risposte

Copiare due stringhe

Devo copiare i caratteri di due stringhe. Aiutatemi grazie. Con la strcpy mi sovrappone le stringhe che copia, quindi mi da in output solo l'ultima stringa copiata.

//copiare i caratteri in una variabile codice fiscale
char codice[16];
// non sto a dichiarare le altre variabili, ma nel progetto sono dichiarate.
    i2=0;
    for (int i=0; i<2; i++) 
        codice[i]=cognome_cod[i];
    for (int i=3; i<5; i++) {
        codice[i]=nome_cod[i2];
        i2++;
    }
    i2=0;
    for (int i=6; i<7; i++) {
        codice[i]=anno_cod[i2];
        i2++;
    }
    codice[8]=mese_cod;
    i2=0;
    for (int i=9; i<10; i++) {
        codice[i]=giorno[i2];
        i2++;
    }
    i2=0;
    for (int i=11; i<14; i++) {
        codice[i]=luogo_cod[i];
        i2++;
    }

    printf("%s\n\n", codice);

2 Risposte

  • Re: Copiare due stringhe

    Premesso che puoi utilizzare anche la strcpy utilizzando l'aritmetica dei puntatori.

    Il metodo che utilizzi è comunque corretto, devi però stare attento agli indici. Il cognome_cod ha tre caratteri, con il ciclo da te scritto ne copi solo due.


    P.s.
    Una stringa devi completarla con \0 come ultimo carattere.
  • Re: Copiare due stringhe

    Grazie ho risolto
Devi accedere o registrarti per scrivere nel forum
2 risposte