CATEGORII DOCUMENTE |
Tipuri de date in FOXPRO
Un tip de data reprezinta o caracteristica a datelor prin care se stabilesc operațiile care se pot executa asupra lor, modul de codificare in memoria calculatorului și semnificația acestor date.
Limbajele de programare au implementate o serie de tipuri de date de baza și, de obicei, permit definirea de noi tipuri pe baza celor predefinite. In FoxPro exista patru tipuri principale de date: logic (boolean), numeric, șir de caractere și data calendaristica. Un alt tip de data este cel numit MEMO și prin intermediul lui sunt manipulate șirurile lungi (sau foarte lungi) de caractere precum și cele de lungime variabila.
De asemenea vectorii, matricile sau tablourile multidimensionale reprezinta un alt tip de date mai complex.
Variabilele reprezinta zone de memorie folosite intr-un program pentru memorarea temporara a unor date.
Incarcarea unei date in zona de memorie a unei variabile se face prin instrucțtiunea de atribuire care are sintaxa
<nume variabila>=<expresie>
unde expresie este fie o constanta fie o combinație valida de constante, variabile, funcții și operatori.
Tipul Logic(boolean)
Poate lua doar doua valori, adevarat (True) sau fals (False). Valoarea adevarat a unei expresii de tip logic este specificata prin construcția .T. (sau .Y.) iar cea de fals prin .F. (sau .N.). Operatorii logici, in ordinea prioritații de evaluare sunt :
Operator |
Semnificație |
Grupeaza expresiile |
|
!, Not |
Negație logica |
AND |
și logic |
OR |
Sau logic |
Tipul Numeric
Este folosit pentru descrierea datelor ce sunt reprezentate de numere. Spre deosebire de alte limbaje de programare care fac distincție intre numerele intregi și cele raționale (și folosesc tipuri distincte pentru reprezentare) in FoxPro nu se face aceasta distincție și exista doar tipul numeric pentru manipularea numerelor. In ordinea prioritații de evaluare operatorii care acționeaza asupra datelor de tip numeric sunt :
Operator |
Semnificație |
Grupeaza expresiile |
|
Ridica la putere |
|
Inmulțire, imparțire, modulo(restul imparțirii) |
|
Adunare, scadere |
Intre doua expresii numerice se pot aplica operatori relaționali și se obțin expresii logice. Operatorii relaționali sunt cei din tabelul de mai jos:
Operator |
Semnificație |
< |
Mai mic decat |
> |
Mai mare decat |
Egal cu |
|
<>, #, != |
Diferit de |
<= |
Mai mic sau egal |
>= |
Mai mare sau egal |
Funcțiile care opereaza cu numere sunt :
- funcții referitoare la semnul datelor numerice (de exemplu ABS() care returneaza valoarea absoluta a parametrului (argumentului), SIGN() care returneaza +1 daca parametrul este pozitiv, 0, daca este nul și -1 daca este negativ)
- funcții de aproximare a datelor numerice (de exemplu INT() returneaza partea intreaga)
- funcții matematice elementare (EXP(), LOG(), LOG10(), SQRT())-funcții trigonometrice (SIN(), COS(), TAN(), ASIN(), ACOS(), ATAN())
Tipul Șir de caractere.
Un șir de caractere reprezinta o mulțime ordonata de caractere tratata ca un tot unitar. Numarul de caractere din șir reprezinta lungimea șirului. Un subșir al șirului dat este o porțiune din șir care incepe de la o poziție specificata, de o lungime data. Șirurile de caractere se scriu intre ghilimele sau apostrofuri. Pentru a include unul dintre cele doua delimitatoare intr-un șir de caractere, șirul va fi incadrat intre delimitatoarele de celalalt tip. Operatorii care actioneaza asupra șirurilor de caractere sunt: operatorul de concatenare (simplu "+" și special "-"(cel special face aceeași operație ca și cel simplu numai ca blancurile de la sfarșitul primului șir sunt trecute la sfarșitul celui de al doilea) și operatorii de comparare sau relaționali. Aceștia din urma sunt prezentați in tabelul de mai jos:
Operator |
Relație |
Inclus in |
|
< |
Mai mic decat |
> |
Mai mare decat |
<>, #, != |
Diferit de |
<= |
Mai mic sau egal |
>= |
Mai mare sau egal |
identic |
Funcțiile pentru prelucrarea șirurilor de caractere se clasifica in:
- aflarea diferitelor informații despre un șir de caractere;
- extragerea unui subșir dintr-un șir in vederea prelucrarii lui separate;
- alcatuirea de noi șiruri de caractere sau adaugarea de caractere noi la cele existente;
- cautarea unor construcții in cadrul unui șir de caractere;
- aplicarea de diferite transformari asupra caracterelor din șir, cum ar fi trecerea la majuscule.
Tipul Data calendaristica
In VFP o constanta de tip data calendaristica se specifica prin luna, zi și an separate prin caracterul '/ '. Ordinea de specificare a zilei lunii și anului, modul de scriere a anului (cu doua sau patru cifre) cat și separatorul dintre cele trei componente ale datei sunt controlate de comenzi specifice ale limbajului.
Implicit anul se specifica prin doua cifre, ordinea este ll/zz/aa iar separatorul este '/'. Adica formatul american de data calendaristica. Data caledaristica vida se specifica prin blancuri in pozițiile celor trei elemente ale ei sau un singur blanc intre paranteze acolade: sau . Datele calendaristice invalide sunt considerate in FoxPro 2.x ca date vide in VFP este semnalata eroare.
Formatul de specificare al datelor calendaristice este controlat de comanda SET DATE urmata de unul din urmatorii parametrii:
Tipul datei |
Formatul |
AMERICAN |
ll/zz/aa |
ANSI |
aa.ll.zz |
BRITISH |
zz/ll/aa |
FRENCH |
zz/ll/aa |
GERMAN |
zz.ll.aa |
ITALIAN |
zz-ll-aa |
JAPAN |
aa/ll/zz |
USA |
ll-zz-aa |
MDY |
ll/zz/aa |
DMY |
zz/ll/aa |
Tipul Tablou
Un tablou este o structura de date ce permite memorarea mai multor valori intr-o zona de memorie continua careia i se atribuie un nume și care poseda un mecanism specific de identificare a elementelor componente.
Pentru declararea unei variabile de tip tablou (unidimensional (vector) sau multidimensional (matrice)) sunt folosite comenzile DIMENSION sau DECLARE care au sintaxa urmatoare:
DIMENSION <nume tablou>[N1] sau
DIMENSION <nume tablou>[N1,N2].
In primul caz este declarat
un vector cu N1 componente numarate de la 1
DECLARE <nume tablou>[N1] sau
DECLARE <nume tablou>[N1,N2]
Funcții pentru prelucrarea tablourilor: ALEN() este o funcție care admite doi parametri, primul este numele tabloului iar al doilea este o valoare numerica care primește valoarea 0 daca se dorește ca funcția sa returneze numarul de elemente al tabloului, 1 daca se cauta numarul de linii al tabloului(sau numarul de elemente pentru vectori), 2 cand se dorește sa se afle numarul de coloane ale tabloului.
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 1483
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved