Oppure

Loading
Program Esempio8;
Uses Crt;

type
   persona=record
   nome,cognome,indirizzo:string;
end;

var uno:persona;

begin
    clrscr;
    writeln(‘Inserire nome, cognome e indirizzo di una persona:’);
    with uno
       begin
       read(nome,cognome,indirizzo);
       write(nome,’ ‘,cognome,’ abita in ‘,indirizzo);
       end;
    readln
end.


Questo esempio non rende molto l’idea, ma, immaginate di avere una struttura che contiene centinaia di dati e altre strutture: vorreste continuare a scrivere il nome della variabile centinaia di volte? Il costrutto with permette di accedere ai campi di una struttura semplicemente usando il nome del campo, poiché il nome della variabile, seguito dal punto, viene automaticamente inserito dal programma usando la variabile specificata dopo with. Per far comprendere meglio, questo è quello che si sarebbe scritto senza with:

(*...*)
read(uno.nome,uno.cognome,uno.indirizzo);
write(uno.nome,’ ‘,uno.cognome,’ abita in ‘,uno.indirizzo);
(*...*)

A cura di: Il Totem