Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Pascal - domanda unioni (record)
Forum - Pascal - domanda unioni (record)

Avatar
eddiewrc (Member)
Expert


Messaggi: 560
Iscritto: 30/04/2006

Segnala al moderatore
Postato alle 19:54
Domenica, 20/06/2010
salve a tutti,
non uso il pascal ma per un esame devo sapere una cosa sul suo funzionamento:

definendo un record come:

type stringa = array [1..6] of char;
type punt_stringa = ^stringa;
type persona = record
        nome : stringa;
        case studente: Boolean of
            true: (matricola: integer);
            false: (codicefiscale: punt_stringa)
end;


eseguire queste operazioni causa un errore di tipo?

...
var pippo persona;
pippo.studente:= true;
pippo.matricola := 223344;
pippo.studente:= true;
pippo.codicefiscale := C;


cioè assegnare un codice fiscale anche se il record è nella modalità TRUE, viene segnalato come errore di tipo? oppure è una cosa possibile?

grazie a tutti!

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 20:34
Domenica, 20/06/2010
non lo segnala un errore in fase di precompilazione ... almeno su delphi .. mentre in fase di run time  da errore

Ultima modifica effettuata da il 20/06/2010 alle 20:39
PM Quote
Avatar
lorenzo (Normal User)
Guru


Messaggi: 1178
Iscritto: 15/04/2008

Segnala al moderatore
Postato alle 20:57
Domenica, 20/06/2010
ma C cos'é?

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 21:02
Domenica, 20/06/2010
si lui perche conosce conosce java e c... di pascal 0 asd

PM Quote
Avatar
lorenzo (Normal User)
Guru


Messaggi: 1178
Iscritto: 15/04/2008

Segnala al moderatore
Postato alle 21:10
Domenica, 20/06/2010
Testo quotato

Postato originariamente da lavoro92:

si lui perche conosce conosce java e c... di pascal 0 asd




????????  :-|:-|:-|


intendevo dire...

Codice sorgente - presumibilmente Plain Text

  1. pippo.codicefiscale := C; {QUESTA C cos'é? stringa, intero, cosa?}


Ultima modifica effettuata da lorenzo il 20/06/2010 alle 21:10
PM Quote
Avatar
eddiewrc (Member)
Expert


Messaggi: 560
Iscritto: 30/04/2006

Segnala al moderatore
Postato alle 1:27
Lunedì, 21/06/2010
scusa, mi sono dimenticato!
C è una stringa contenente "PIPPO"

PM Quote
Avatar
gigisoft (Member)
Guru


Messaggi: 696
Iscritto: 11/10/2008

Segnala al moderatore
Postato alle 14:02
Martedì, 22/06/2010
Salve,
non ho tempo di provarlo,
non so in compilazione, ma almeno a run time dovrebbe dare errore
e se anche non desse errore, l'informazione codicefiscale andra' a sovrascrivere l'informazione matricola, dato che il tipo unione e' stato pensato apposta per usare la stessa area di memoria per le varie opzioni.
Ciao.

Luigi

PM Quote