Visualizzazione dei risultati da 1 a 3 su 3

Discussione: [c]gestione array

  1. #1

    [c]gestione array

    Salve a tutta la community di HTML!
    Sono uno studente di ing. informatica a Napoli che ha un problema con la gestione di un array.
    Voglio risolvere tale problema dato che a breve ho l'esame scritto... e l'unico cruccio che ho è proprio questo: in un programma assegnatomi dal prof ho trovato un piccolo intoppo.
    Praticamente dovrei effettuare una ricerca sequenziale di elementi in un array il cui risultato deve essere a sua volta un array che contiene le posizioni dell'elemento cercato all'interno dell'array stesso. Ho trovato la cosa molto semplice... ma al tempo stesso da grattacapo .
    Questa è la funzione:

    void ricerca_sequenziale(vettore v, vettore r, int n, int &j, int *e){
    register int i;
    j=0;
    printf("Inserisci l'elemento da ricercare all'interno del vettore: ");
    scanf("%d", e);
    for(i=0;i<n;i++){
    if(*e==v[i]){
    r[j]=i+1;
    j=j+1;
    }
    }
    }

    La funzione qui posta non funge...
    Mi sono confrontato con un amico di facoltà, il quale mi ha cambiato i parametri d'ingresso in maniera a me non chiara:

    void ricerca_sequenziale(vettore v, vettore &r, int n, int &j, int *e){...

    Secondo le mie poche conoscenze l'operatore & dovrebbe restituire l'indirizzo in memoria della variabile, cosa che qui non ci azzecca minimamente(almeno penso).
    Volevo sapere se questa comunque è la soluzione giusta e se si percché mettere &, altrimenti quale potrebbe essere una soluzione alternativa?
    Grazie di cuore! Aspetto belle risposte

    P.s.: se avete bisogno vi passo l'intero programma.

  2. #2

    Re: [c]gestione array

    studiati i riferimenti, che altro non sono, in parole povere, una scorciatoia sintattica per i puntatori, con un piccolo particolare: in C non esistono (sono una peculiarità del C++)

  3. #3
    Appunto :S . Non ho utilizzato alcun passaggio per riferimento.
    E poi in un parametro formale non ci metterei mai & per una questione di logica. Piuttosto userei nel richiamo della funzione & e nel parametro formale il puntatore *...

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