Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 15 su 15
  1. #11
    Originariamente inviato da ChReAn


    Scusa ma... Assegnare un nuovo valore a una variabile non ridimensiona l'array.
    Io devo ridimensionare l'array piu' volte, e quindi non mi basta una sola inizializzazione.

    Credo che la soluzione piu' rapida (anche se non mi piace troppo) sia quella della copia fra array, per non ricorrere alle liste.
    Perchè non vuoi usare le liste? sono adattissime al tuo scopo visto che hai detto che devi modificare la dimensione + di una volta.
    Postresti fare una funzione per il ridimensionamento dell'array... una cosa del tipo

    Codice PHP:
    function rid_array(array1[],array2[],n) {

    // array1 è l'array iniziale, array2 quello destinatario 
    // e n è la dimensione alla quale vuoi ridimensionare

      
    for (int i 0<= nn++) {
        if (
    array1[i] == null) {
          
    array2[i] = 0;
        } else {
          
    array2[i] = array1[i];
        }
      }
    }

    // scusa se ci sono errori di sintassi ma è tanto 
    // che non programmo in C++ 
    [Homepage] [Contattami]
    Powered by: Ubuntu - Debian - Gentoo
    Developing: Java - C++ - PHP

    [supersaibal]"Perchè tanto Debian è meglio"
    [/supersaibal]

  2. #12
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    167
    Originariamente inviato da n355un0


    sinceramente, parlando di c++, opterei più volentieri per new e delete.
    Anch'io in C++ uso new e delete e non malloc e free, come gli avevo risposto nel primo messaggio. Ma se avevo capito bene la domanda, e temo di no, lui parlava di ridimensionare un array, e al momento mi era venuta in mente la realloc che utilizzo in C dopo che all'array ho dato una prima dimensione con la malloc, e voglio cambiarne la dimensione dinamicamente.

    ciao.

  3. #13
    n355un0
    Guest
    Originariamente inviato da Level

    Anch'io in C++ uso new e delete e non malloc e free, come gli avevo risposto nel primo messaggio. Ma se avevo capito bene la domanda, e temo di no, lui parlava di ridimensionare un array, e al momento mi era venuta in mente la realloc che utilizzo in C dopo che all'array ho dato una prima dimensione con la malloc, e voglio cambiarne la dimensione dinamicamente.

    ciao.
    capito

  4. #14
    Utente di HTML.it L'avatar di ChReAn
    Registrato dal
    Aug 2002
    Messaggi
    486
    Grazie a tutti!

    Virusbye, alla fine sto adottando un sistema analogo a quello da te indicato.
    Il motivo per cui non uso le liste e' che al momento non ho avuto il tempo per implementare rapidamente una classe che potesse rappresentare, in maniera comoda per me, una lista concatenata.
    So che di esempi in rete ce n'erano parecchi ma avrei dovuto riscrivere buona parte del software (che non era molto scalabile di suo).

    Ciapz!
    ChReAn
    -------------------

    Slackware 9.1 powered

  5. #15
    L'unica soluzione tramite array è quella di Level, perché in C++ non esistono operatori nativi come new/delete che permettano di ridimensionare un array. Quindi per forza realloc() della libreria standard C. Non ricordo bene ma mi pare sia dichiarata in <malloc.h>, e forse anche in <stdlib.h>.

    Ciao.

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