Written by xinyiman Ottobre 19, 2011, 09:07:00 am22061 ViewsRating: 0 (0 Rates)Print
Esattamente come per le variabili di tipo numerico anche
per le variabili di tipo carattere sono presenti delle funzioni
native del linguaggio che permettono di lavorare su di esse. Le più
comuni ed utilizzate sono le seguenti.
ORD(x): immaginiamo di avere una variabile carattere di
nome x e ipotizziamo di voler sapere qual'è il suo corrispettivo
numerico, utilizzando la funzione ORD sarà possibile ottenere il
risultato che ci siamo proposti (esempio A equivale a 65).
CHR(x): la funzione CHR è l'esatto opposto della
funzione ORD, ovvero da un valore numerico possiamo ricavare il suo
valore carattere (esempio 65 equivale ad A).
SUCC(x): con la funzione SUCC possiamo sapere quale
carattere viene dopo a quello contenuto nella variabile x (esempio se
la variabile x contiene A il risultato sarà B).
PRED(x): con la funzione PRED possiamo sapere quale
carattere viene prima di quello contenuto nella variabile x (esempio
se la variabile x contiene D il risultato sarà C).
UPPERCASE(x): la funzione UPPERCASE restituisce il
carattere in maiuscolo, ad esempio se nella variabile x ci fosse il
carattere 'c' il risultato sarebbe 'C'. Una funzione simile è
ANSIUPPERCASE.
LOWERCASE(x): la funzione LOWERCASE restituisce il
carattere in minuscolo, ad esempio se nella variabile x ci fosse il
carattere 'B' il risultato sarebbe 'b'. Una funzione simile è
ANSILOWERCASE.
Adesso vediamo un esempio che racchiude tutte queste
funzioni appena descritte, per far si che l'esempio funzioni bisogna
dichiarare una variabile di nome carattere e di tipo char.
carattere:='C';
writeln('Carattere: ', carattere);
writeln('Valore numerico di ', carattere,': ',
Ord(carattere));
writeln('Carattere di 65: ', Chr(65));
writeln('Carattere successivo di C: ',
Succ(carattere), ' Precedente di C: ', Pred(carattere));
writeln('Uppercase di c: ', UpperCase('c'));
writeln('Lowercase di C: ', LowerCase('C'));
writeln('AnsiUppercase di c: ', AnsiUpperCase('c'));
writeln('AnsiLowercase di C: ', AnsiLowerCase('C'));
Una menzione particolare la meritano IntToStr e
StrToInt, che sono due funzioni per trasformare un numero in stringa
e viceversa. Vediamo un esempio: val:=IntToStr(7);
metterebbe nella variabile val il valore 7 sottoforma di stringa, un
carattere in questo caso, fosse stato 77 erano due caratteri. Mentre
se fosse stato: val:=StrToInt('7'); mi
avrebbe messo nella variabile val il valore numerico 7. Sono funzioni
molto utili e di uso quotidiano.
About the author
xinyiman registered at Italian community of Lazarus and Free Pascal on Ottobre 14, 2011, 10:56:28 pm and has posted 3269 posts in the boards since then. Last visit was Oggi alle 08:25:57 am.
Questo blog non rappresenta una testata giornalistica poiché viene
aggiornato senza alcuna periodicità. Non può pertanto considerarsi un
prodotto editoriale ai sensi della legge n. 62/2001.
Questo sito utilizza cookie, anche di terze parti, per offriti servizi in linea con le tue preferenze. Chiudendo questo banner, scorrendo questa pagina, cliccando su un link o proseguendo la navigazione in altra maniera, acconsenti all’uso dei cookie.