RSS

L4. Tipuri

29 Nov

Tipurile intregi

Tipurile intregi din C/C++ sunt: enum, short int,  int, unsigned int, long, unsigned long.

Pentru fiecare variabila se aloca (rezerva) un spatiu de memorie conform cu tipul ei. Acest lucru influenteaza domeniul de valori care se poate aloca variabilei:

  • enum, short int, int:
    • spatiu: 16 biti
    • domeniu: -32768..32767
  • unsigned int
    • spatiu: 16 biti
    • domeniu: 0..65535
  • long
    • spatiu: 32 biti
    • domeniu:-2147483648 .. 2147483647
  • unsigned long
    • spatiu: 32 biti
    • domeniu:0 .. 4294967295

Observatii:

  • valorile UNSIGNED (eng: fara semn) sunt valori naturale, cu valori pozitive
  • in sprijinul ideii de mai sus, ca tipul determina domeniul de valori, venim cu urmatoarea demonstratie:
    • presupunem ca avem o variabila A de tip int (pe 16 biti); aceasta inseamna ca valoarea maxima ce se poate memora este un sir de 15 pozitii binare cu 1 (primul bit memoreaza semnul); daca convertim aceasta valoare din baza 2 in baza 10 (puteti folosi aplicatia CALCULATOR din Windows) obtinem exact 32767
    • analog, pentru o variabila unsigned int (16 biti) putem memora 16 pozitii binare cu 1 (din cauza unsigned, nu mai avem semn – adica valori pozitive); sirul de 16 pozitii binare reprezinta valoarea 65535 din baza 10.

Tipurile reale

 

  • float(32 biti):   3.4 * (10**-38) .. 3.4 * (10**+38)
  • double(64 biti): 1.7 * (10**-308) .. 1.7 * (10**+308)
  • long double(80 biti): 3.4 * (10**-4932) .. 1.1 * (10**+4932)

Tipul caracter

  • char -127 .. 127 (pentru fiecare caracter este asociata, in mod unic, o valoare de la 0 la 127; aceasta asociere se numeste CODUL ASCII)

 

 
Leave a comment

Posted by on 29/11/2009 in C2_2 Limbajul C/C++

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: