Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [C] Come passare un vettore char ad una funzione

    ciao a tutti. Sto imparando il linguaggio C e sinceramente ho incontrato delle difficoltà nel passare una stringa ad una funzione...so che è una cosa banale ma non riesco proprio capire come funziona
    devo usare una funzione per creare un vettore binario (composto solo da '0'/'1')
    il problema è che devo creare un progetto con 2 file sorgenti (.c) e un file header (.h).
    ho impostato il codice in questo modo:

    --------sorg1.c----------
    codice:
    # include <stdio.h>       
    # include <stdlib.h>    
    # include "header.h"     
    int main ()                  
    {
       char vettore[10];          
       aggiungi_bit(vettore);      
       for (i=0; i<10; i++)        
        {
          printf("%c",vettore[i]);
        } 
    }
    ---------sorg2.c------
    codice:
    # include <stdio.h>
    # include <stdlib.h>
    char aggiungi_bit(vett)
    {
    int x;
    for(x=0; x<10; x++)
        {
          vett[x]='1';
          x++;
          vett[x]='0';
        }
    }
    ------------header.h----------
    codice:
    char aggiungi_bit(vett);
    ditemi,per favore, tutto quello che è errato e come va impostato il codice.
    Grazie
    Ultima modifica di MItaly; 12-11-2013 a 00:06 Motivo: Aggiunti tag CODE

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,468
    Questo modo "creativo" di mostrare tre file insieme è fantastico

    Ma non si capisce nulla.

    Magari potresti metterli uno dopo l'altro con i tag CODE?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,468
    Ecco ... ora va meglio ...

    La funzione dovrebbe essere

    void aggiungi_bit(vett[])

    e poi non mi convince quel x++; all'interno della for ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  4. #4
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,590
    void aggiungi_bit(char vett[])

    oppure

    void aggiungi_bit(char *vett)

    Sono sicuro che quella di Oregon fosse solo una distrazione
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  5. #5
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,468
    Ovviamente void aggiungi_bit(char vett[]) ... :-)

    (In realtà volevo solo scrivere

    vett[]

    per fargli capire il problema ma poi è partito un copia-incolla automatico :-)))
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  6. #6
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,590
    Immaginavo
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  7. #7
    grazie delle risposte... alla fine ci sono riuscito dopo un po' di tentativi e funziona così:


    sorg1.c

    ....
    int
    main ()
    {
    char vettore[10];
    aggiungi_bit
    (vettore);
    ....

    sorg2.c
    ...

    void aggiungi_bit(vett[]){
    ...


    header.h


    void aggiungi_bit(vett[]);

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.