Tipul de date specifică un set de valori, un set de operațiuni care pot fi aplicate la aceste valori și stoca valori mod de a pune în aplicare și de a efectua operațiuni.
Procesul de inspecție și impun restricții cu privire la tipurile de date utilizate se numește tastat sau tastat datele programului. Următoarele tipuri de tastare:
- Static tastare - verificarea de tip se efectuează la momentul compilarii.
- dactilografiere dinamic - tastarea se face în timpul rulării.
limbajul C sprijină dactilografiere statică, precum și tipurile de date utilizate în cadrul programului trebuie să fie specificate înainte de compilare.
Există simplu, compus și alte tipuri de date.
date simplu
Date simple pot fi împărțite în
Compusul (complex) de date
- Array - o colecție indexată de elemente de același tip.
- String - o matrice care deține un șir de caractere.
- Structura - un set de elemente diferite (câmp de înregistrare) stocate ca o unitate și care oferă acces la câmpurile individuale ale structurii.
Alte tipuri de date
Un program scris în limbajul C, operează cu diferite tipuri de date. Toate datele au un nume și tip. Accesarea datelor în program se realizează prin numele lor (identificatori).
Identifier - o secvență care cuprinde nu mai mult de 32 de caractere, care pot include orice litere latine a - z, A - Z, numerele de la 0 - 9 și subliniere (_). Primul caracter al unui identificator nu trebuie să fie o cifră.
Deși acest lucru poate fi numele cu până la 32 de caractere care specifică valoarea are doar primele 8 caractere. Pe lângă numele, toate datele au un tip. indicație referitoare la tipul este necesar pentru a face cunoscut cât de mult spațiu în memorie va ocupa proprietatea.
compilator C aderă la respectarea strictă cu litere mari și mici, în numele dispozitivelor de identificare și token-uri.
date reale
Tipul Real este conceput pentru a reprezenta numere reale. Numerele reale sunt reprezentate în mașina grila de descărcare într-o formă normalizată.
Forma normalizată presupune existența unei cifre semnificative (nu 0) la numărul întreg împărțirea și părți fracționare. Această reprezentare este înmulțită cu radix în măsura corespunzătoare. De exemplu, numărul de 12,345.678 în formă normalizată poate fi reprezentat ca
12345.678 = 1.2345678 × 10 4
Numărul 0.009876 în formă normalizată poate fi reprezentat ca
În notație binară cifră semnificativă cu care se confruntă separator întreg și părți fracționare poate fi egal decât 1. Dacă numărul nu poate fi reprezentat sub formă normalizată (de exemplu, numărul 0), cifră semnificativă înainte de partea zecimală este 0.
Cei mai semnificativi biți de picioare în formă normalizată după partea zecimală, numită mantisa.
În general, numărul real în mașină de calcul grila de descărcare poate fi reprezentat de 4 câmpuri.
- mark - bit care determină semnul numărul real (0 pentru numere pozitive, 1 - pentru negativ).
- Studii - 2 determină gradul în care doriți să multiplice numărul într-o formă normalizată. În ceea ce privește numărul de gradul 2 în formă normalizată poate fi pozitiv sau negativ, zero, gradul 2 în reprezentarea unui număr real care corespunde sumei de deplasare, care este definită ca
Există trei tipuri principale de reprezentare a numerelor reale în limba C:
După cum se vede din tabelul de biți de tip întreg de la float double si offline. Gama de prezentare a unui număr real este format din două benzi dispuse simetric în jurul zero. De exemplu, domeniul de reprezentare a numerelor de tip float poate fi exprimată ca:
Exemplu. -178.125 reprezintă numărul de grilă 32 de biți (tip float).
Pentru a reprezenta numere în sistemul binar transforma separat număr întreg și părți fracționare:
Pentru a converti forma normalizată se realizează trecerea de 7 biți la stânga).
Pentru a determina gradul de schimbare se aplică:
Astfel, numărul reprezentat în biți -178.125 grila ca
tipul de caractere
boolean
Boolean este folosit în operații logice utilizate în condițiile și ciclurile și controalele algoritmice are două sensuri:
int n; // Cele n variabila de tip întreg
dublă a; // Variabila un tip real dublă precizie