Strcpy e char

di il
21 risposte

21 Risposte - Pagina 2

  • Re: Strcpy e char

    FredTagliacapelli ha scritto:


    Mikelius ha scritto:


    il problema è vinc non app1

    con vinc passi tutta la stringa, con vincpassi il carattere di posto i.


    Non è che ti stai confondendo? L'indice i scorre il vettore in verticale, perciò nome per nome... non scorre in orizzontale, non scorre carattere per carattere, no?


    In orizzontale ? In verticale ? Che dici ?

    char vinc[]

    è un semplice vettore di char ... forse dovresti rivedere il concetto teorico ... vinc è il vettore di char ma vinc è un char
  • Re: Strcpy e char

    Ma vinc l'ho dichiarato così: char vinc[10][20]. Ergo non capisco di quale vinc stiate parlando...
  • Re: Strcpy e char

    Nella funzione stai passando vinc .. non vinc[][]..
    le cose sono mooolto diverse, forse aveva senso quello che hai fatto solo se usavi vettori di puntatori char e non vettori char

    E bene rivedere tutto quello che riguarda vettori e matrici
  • Re: Strcpy e char

    Va bene. Grazie per la disponibilità!
  • Re: Strcpy e char

    Forse ti stai confondendo tra stringhe e caratteri. Il vettore che hai utilizzato non passa nome per nome, ma carattere per carattere:
    se hai un vettore char vett[10] non hai disponibili 10 nomi/parole, ma hai disponibile 10 caratteri, -1 per il carattere di fine stringa(\0), cioe' per il nome "Davide" (mi e' nuovo, usare il mio nome come esempio) servirebbe un vettore con almeno 7 caratteri (char vett[7]) dove 6 sono i caratteri effettivamente utilizzati dal nome, e l'ultimo e' il carattere di fine stringa.
    Diverso e' per le stringhe:
    mettiamo che devo memorizzare 10 nomi. Creo il vettore di tipo stringa "string name[10]", dove i membri sono da 0 a 9. Ogni membro ha a disposizione una stringa (non mi ricordo il massimo di caratteri, ma e' molto grande, non lo riempirai probabilmente mai tutto), e quella stringa puo' effettivamente mantenere il nome intero, ad esempio
    
    string name[10];
    name[1] = "Davide";       //Il numero puo' essere il contatore i     
    name[2] = "Edoardo";    
    name[3] = "Mario rossi"; //Puo' contenere anche spazi    
    //...
    name[9] = "Mariangianfranciangela";    
     
    e si ottiene il vettore stringa di 10 elementi con 10 nomi diversi -se sono effettivamente diversi, poi non ci sono problemi se qualche nome e' uguale-.
  • Re: Strcpy e char

     string name[10];
    
    string in c non esiste , se non sbaglio è prerogativa solo del c++.
    Il codice che ha postato è scritto in c, quindi string name[10]; non può essere usato in questo modo
    l'unico modo (se sbaglio correggetemi) per avere 10 stringhe è una matrice di char oppure un vettore di puntatori a char
  • Re: Strcpy e char

    Certo, ma lui ha incluso string.h, quindi(se non sbaglio) puo' usarle anche in C.
Devi accedere o registrarti per scrivere nel forum
21 risposte