Visualizzazione dei risultati da 1 a 3 su 3

Visualizzazione discussione

  1. #3
    Utente di HTML.it
    Registrato dal
    Nov 2016
    Messaggi
    6
    Ho risolto. In pratica ho capito che devo passare alla funzione un puntatore generico, ma che punti alla struct cat che ho dichiarato fuori dal main, altrimenti se do un nome generico alla struct nella funzione, non funziona. Non posso scrivere

    codice:
    void stampa (struct strgenerica *pt,int n_prod) {..} <--- 
    Ma devo scrivere cosi.}

    codice:
    struct cat{    <----
        char *codice, *nome_prodotto, *categoria, *data;
        int prezzo,unita;
    };
    void stampa(struct cat *pt,int n_prod);
    
    
    int main(int argc, const char * argv[]) {
    ...
    stampa(p_cat, n_prodotti);
    ...
    }
    
    
    void stampa (struct cat *pt,int n_prod) {...} <----
    Però ho ancora un po' di dubbi.
    Se per esempio avessi dichiarato la struct all'interno del main

    codice:
    int main(int argc, constchar * argv[]) {
    struct cat{
        char *codice, *nome_prodotto, *categoria, *data;
        int prezzo,unita;
    };
    }
    come avrei dovuto scrivere la funzione e passare il puntatore alla struct, visto che al di fuori del main non è visibile il nome della struct se dichiarata all'interno di esso?

    Oppure le struct, per usarle in questo modo devono essere dichiarate al di fuori del main, come ho fatto io?
    Così non diventano una sorta di 'variabili globali'?
    Grazie per la risposta
    Ultima modifica di noob9; 06-11-2016 a 18:03

Tag per questa discussione

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 © 2025 vBulletin Solutions, Inc. All rights reserved.