Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Gestione Coda in C

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2015
    Messaggi
    25

    Gestione Coda in C

    Girando i vari codici di gestione di una Coda in C, ho visto che quasi tutti i libri implementano una funzione per inserimento dati di questo tipo:

    void inserisci(int *coda, int *punt_ins, int elem, int *presenti)
    {
    vett[*punt_ins] = elem;
    *punt_ins = ((*punt_ins + 1) % LUNG_CODA);
    *presenti = *presenti + 1;
    }

    premesso che LUNG_CODA è stato impostato con una direttiva "define", qual'è lo scopo della linea di codice evidenziata in blu? non basta fare semplicemente *punt_ins = *punt_ins + 1 ? perchè si utilizza % LUNG_CODA che se non erro è un controllo bit a bit?

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    No, quello è l'operatore che restituisce il resto della divisione. In questo modo l'indice non va oltre il massimo ma riparte da zero, in maniera circolare.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2015
    Messaggi
    25
    mi è chiaro il fatto che non deve superare LUNG_CODA, ma non ho capito come possa servire la divisione :/

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Quote Originariamente inviata da robz14 Visualizza il messaggio
    mi è chiaro il fatto che non deve superare LUNG_CODA, ma non ho capito come possa servire la divisione :/
    Il resto della divisione
    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 © 2025 vBulletin Solutions, Inc. All rights reserved.