Pagina 1 di 5 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 43

Discussione: C e puntatori

  1. #1
    Utente di HTML.it L'avatar di Fabiuz
    Registrato dal
    Nov 2004
    Messaggi
    892

    C e puntatori

    Buongiorno a tutti.
    Devo scrivere una funzione char *cerca_carattere che dato un array di caratteri e un valore mi determina se quel valore è presente. La f.ne mi deve restituire un puntatore al primo elemento dell'array che contiene quel valore o altrimenti se non cè mi restituisce NULL!!!!!

    Ma io non so proprio come fare!
    Confido in voi per un aiuto !!!
    Grazie a tutti !!!



  2. #2
    codice:
    char * cercacarattere(char *vet,char val)
    {int i=0;
    while (*(vet+i)!='\0'){             //se non e' finita la stringa
       if *(vet+i)==val return (vet+i);
       i++;
    }
    return null;
    
    }
    n.b. la stringa deve terminare con '\0'

  3. #3
    Utente di HTML.it L'avatar di Fabiuz
    Registrato dal
    Nov 2004
    Messaggi
    892
    Scusa la domanda poco intelligente, ma una array di caratteri è considerato come stringa?

  4. #4
    Utente di HTML.it L'avatar di Fabiuz
    Registrato dal
    Nov 2004
    Messaggi
    892
    la mia f.ne dovrebbe passare

    char *cerca_carattere (char a[], char c, int dim).....

  5. #5
    Originariamente inviato da Fabiuz
    Scusa la domanda poco intelligente, ma una array di caratteri è considerato come stringa?
    si.
    in c non esiste un tipo stringa
    quindi si ottiene facendo un array di caratteri..
    quasi tutte le funzioni c che gestiscono le stringhe(sicuramente le standard)
    utilizzano un array terminante con '\0'.
    quindi se devi scrivere 'ciao\0'
    ti serve un array di 5 caratteri (dal carattere 0 al carattere 4)
    e lo dichiari come
    char str[5];
    /**
    valori utilizzabili da str[0] a str[4]
    ovvero *(str) .. *(str+4)
    **/
    in c gli array sono gestiti con puntatori
    &pippo[0] equivale a pippo.

  6. #6
    Originariamente inviato da Fabiuz
    la mia f.ne dovrebbe passare

    char *cerca_carattere (char a[], char c, int dim).....
    per come l'ho impostata io la dimensione non occorre
    poi io sono stato a quel che mi hai chiesto:
    dato un array di caratteri e un valore
    in finale se vuoi puoi sostituire il while con
    while(i<dim)


    naturalmente char a[]
    EQUIVALE a
    char *a

  7. #7
    Utente di HTML.it L'avatar di Fabiuz
    Registrato dal
    Nov 2004
    Messaggi
    892
    Ma nel passaggio di parametri, tu hai passato un puntatore.
    Se io volessi passare il vettore come in :
    char *cerca_carattere (char a[], char c , int dim)
    dovrei solo cambiare *vet con a[]???

    Grazie che mi stai dedicando il tuo tempo!

  8. #8
    Originariamente inviato da Fabiuz
    Ma nel passaggio di parametri, tu hai passato un puntatore.
    Se io volessi passare il vettore come in :
    char *cerca_carattere (char a[], char c , int dim)
    dovrei solo cambiare *vet con a[]???

    Grazie che mi stai dedicando il tuo tempo!
    si,
    e volendo puoi sostituire tutti i *(vet+i)
    con vet[i]

  9. #9
    Utente di HTML.it L'avatar di Fabiuz
    Registrato dal
    Nov 2004
    Messaggi
    892
    Scusa, ma vai all'Università??

  10. #10
    no.
    ho finito le superiori e lavoro
    ..
    ma non andiamo off-topic per questo tipo di domanda
    bisogna usare i PVT

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.