Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Puntatori linguaggio C

  1. #1

    Puntatori linguaggio C

    ciao.. ho scritto una funzione piccolissima e esce un errore..

    il programma funzia lo stesso però esce un errore di warning


    firma:

    void ottieniNomi(char *,char *);

    codice:

    void ottieniNomi(char *g1, char *g2)
    {
    printf("Inserire il nome del primo Giocatore: ");
    scanf("%s",g1);
    printf("\n\nE ora il nome del secondo Giocatore: ");
    scanf("%s",g2);
    }


    Nel main faccio:

    ottieniNomi(&gioc1,&gioc2);

  2. #2
    Utente di HTML.it L'avatar di Metflar
    Registrato dal
    Apr 2007
    Messaggi
    790

    Re: Puntatori linguaggio C

    Originariamente inviato da SergiusXP
    ciao.. ho scritto una funzione piccolissima e esce un errore..

    il programma funzia lo stesso però esce un errore di warning


    firma:

    void ottieniNomi(char *,char *);

    codice:

    void ottieniNomi(char *g1, char *g2)
    {
    printf("Inserire il nome del primo Giocatore: ");
    scanf("%s",g1);
    printf("\n\nE ora il nome del secondo Giocatore: ");
    scanf("%s",g2);
    }


    Nel main faccio:

    ottieniNomi(&gioc1,&gioc2);
    che errore?
    conoscenze: C/C++, Java, PHP, Python
    [No PM tecnici o di qualsiasi genere]

  3. #3
    Grazie per la risposta.

    L'errore riscontrato è:

    [Warning] passing arg 1 of `ottieniNomi' from incompatible pointer type
    [Warning] passing arg 2 of `ottieniNomi' from incompatible pointer type

  4. #4
    Utente di HTML.it L'avatar di Metflar
    Registrato dal
    Apr 2007
    Messaggi
    790
    Originariamente inviato da SergiusXP
    Grazie per la risposta.

    L'errore riscontrato è:

    [Warning] passing arg 1 of `ottieniNomi' from incompatible pointer type
    [Warning] passing arg 2 of `ottieniNomi' from incompatible pointer type
    prova a togliere le & quando passi i puntatori
    conoscenze: C/C++, Java, PHP, Python
    [No PM tecnici o di qualsiasi genere]

  5. #5
    Ora funziona perfettamente...


    Ma nel passaggio dei parametri non ce li dovevo ficcare dentro gli & ????

  6. #6
    Utente di HTML.it L'avatar di Metflar
    Registrato dal
    Apr 2007
    Messaggi
    790
    Originariamente inviato da SergiusXP
    Ora funziona perfettamente...


    Ma nel passaggio dei parametri non ce li dovevo ficcare dentro gli & ????
    sono puntatori che senso ha passarne l'indirizzo?passando il puntatore passi l'indirizzo a cui punta
    conoscenze: C/C++, Java, PHP, Python
    [No PM tecnici o di qualsiasi genere]

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    1,326
    Se nel main gioc1 e gioc2 sono già dichiarati puntatori, alla funzione devi passarli (come dice Metflar) senza l'operatore &; se invece sono variabili normali, allora nella chiamata alla funzione devi ricorrere a quell'operatore.

  8. #8
    Ah ecco! NON mi ricordavo più la differenza.. GRAZIE MILLE^^

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.