Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    122

    [C]..allocare memoria dinamicamente..

    ciao...
    devo creare un vettore dinamico in C ed ho scritto una cosa del genere:
    -----------------------------------
    struct DPoint *Points;
    Points =(struct DPoint *)malloc(sizeof(struct DPoint)*10000 );
    -----------------------------------
    voglio ,però, far si che il vettore non abbia una dimensione massima (10000)...ma che richieda memoria volta per volta..in quanto successivamente devo accedere all'ultimo elemento di questo vettore ,ed essendo dinamico non potrei, (memorizzando la memoria allocata in una variabile potrei sapere la lunghezza ed accedere con un for!!).
    come faccio tutto sto casino??
    grazie...AIUTATEMI!!!
    Mi raccomando!...in generale...

  2. #2
    Devi usare una struttura dati chiamata Lista.
    www.hyperbook.it per maggiori chiarimenti.

    Ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    423
    Invece di usare la lista, puoi usare l'istruzione realloc per aumentare o diminuire la memoria assegnata al vettore, conservando i dati in esso contenuti:
    codice:
    void *  realloc ( void * memblock, size_t size );
    http://www.cplusplus.com/ref/cstdlib/realloc.html
    Si usa così:
    codice:
    Vettore = (Tipo_Vettore*) realloc(Vettore, sizeof(Tipo_Vettore) * num_elementi;

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.