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

    [C++]Interpretazione del Concetto di Allocazione Dinamica di una Stringa

    Salve a tutti, tra non molto ho l'esame di programmazione 1 e avrei una grossa lacuna che spero possiate colmare.
    Posto prima un pezzetto della traccia:

    "Si realizzi in C++ la classe PacchettoRegalo che preveda le variabili membro:
    - Destinatario, di tipo stringa (allocata dinamicamente)
    - Peso (di tipo float, si consideri espresso in grammi)
    - Forma, di tipo stringa (allocata dinamicamente)"
    Non ho ben capito cosa intende per allocazione dinamica della stringa.
    Io ho pensato a una cosa del genere:
    codice:
    const int DMAX=100;
    typedef char buffer[DMAX];
    
    int strlung(buffer);
    void strinput(char *&);
    
    int main(int argc, char *argv[])
    {
        char * stringa;
        
        strinput(stringa);
        cout << stringa << endl;
    }
    
    int strlung(buffer s){
        int i=0;
        
        while(s[i]!='\0')
              i++;
              
        return i;
        }
        
    void strinput(char *&s){
         buffer strapp;
         
         cin >> strapp;
         s = new char[strlung(strapp)];
         s=strapp;
         }
    Ovvero metto l'input in una stringa buffer di lunghezza fissa, calcolo la lunghezza effettiva dell'input e successivamente alloco in memoria lo spazio necessario a contenerla.
    Ho fatto bene o esiste un modo più semplice?
    Inoltre mi considera il carattere ' ' (spazio) come '\0'
    Spero possiate aiutarmi, grazie

  2. #2
    Se non è stato specificato altro dall'autore del problema, ritengo che la tua interpretazione sia corretta e che la soluzione da te postata sia giusta.

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