Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2015
    Messaggi
    6

    [C] Trasmissione di un array di stringhe per indirizzo

    Salve a tutti, ho un problema con l'utilizzo dei sottoprogrammi. Stavo cercando di trasmettere vari array di stringhe e ho provato in questo modo:
    codice:
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    void leggi_inf (osp[]*);
    
    
    int main()
    {
        typedef char osp [6];
        osp [100];
    }
    Mi viene segnalato che il tipo 'osp' è un tipo sconosciuto e quindi l'ho dichiarato con la typedef.
    Sapete per caso come trasmetterlo correttamente?

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,466
    Intanto non dovresti parlare di "trasmettere" ma di "passare come argomento" un array ...

    In secondo luogo, non capisco il motivo del typedef (che non fa altro che diminuire la chiarezza del codice). Ti basta usare un array del tipo

    char osp[6][100]

    per il tuo programma ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2015
    Messaggi
    6
    La prof penso abbia sempre parlato di trasmissione e questa cosa mi è rimasta probabilmente, ma grazie per la precisazione
    Per dichiarare vettori di stringhe conosco soltanto la typedef, questa sintassi non ce l'ho presente; in sintesi funziona nello stesso modo o ha delle particolarità?
    Ritornando alla domanda principale, nella dichiarazione del void dovrei scrivere char oppure il tipo 'osp'?

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,466
    Non è solo la tua professoressa che usa questo verbo, ma non ha senso ...

    Comunque, puoi scrivere così, anche se in questo caso la chiarezza del codice diminuisce e non consiglio di usare questo tipo di approccio per le stringhe ...

    codice:
    typedef char osp[6];
    
    
    void leggi_inf (osp v[])
    {
       ...
    }
    
    
    int main()
    {
        osp arr[10];
    
    
        leggi_inf(arr);
        
        ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

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.