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