Tipus de dades senzills lleng.c

Solo disponible en BuenasTareas
  • Páginas : 11 (2663 palabras )
  • Descarga(s) : 0
  • Publicado : 14 de octubre de 2010
Leer documento completo
Vista previa del texto
Tipus de dades senzills en C
Introducció als tipus de dades Els ordinadors treballen amb dades i amb instruccions, i tot això codificat en un sistema binari. De bones a primeres, el processador esperarà rebre instruccions, i no dades, quan vulguem que el processador utilitzi una dada li ho haurem d'indicar. Ara bé, la cosa no és tant senzilla, no totes les dades són iguals, no és el mateixtreballar amb un número, que en binari es representarà d'una determinada manera, que amb un text o un caràcter, que en binari es representaran d'una altra manera; i no és el mateix treballar amb números sencers que amb números amb decimals; o números únicament positius, o números positius i negatius, etc. A tall d'exemple, el número binari 01001011 representa la lletra K en la codificació ASCII decaràcters, però representa el número 75 en notació natural del sistema binari. Fixem-nos doncs que, per tant, un dels paràmetres més importants a l'hora de crear i utilitzar dades serà que caldrà indicar de quin tipus de dades es tractaran, ja que la codificació binària que s'utilitzarà serà diferent per a cada cas. Però això no és tot, hi ha un altre paràmetre important a l'hora de codificar una dadaen binari, la mida de les dades. Cal pensar que en un byte (8 bits) les variacions possibles de 0's i 1's que podem obtenir són de 2 8 = 256. Això vol dir que si utilitzem únicament 1 byte per emmagatzemar números sencers només podrem emmagatzemar un número que es trobi entre el 0 i el 255 (ambdós inclosos). Per tant, si volem emmagatzemar l'any en què ens trobem en un sol byte veurem que nodisposem de prou capacitat de representació i, per tant, haurem d'ampliar el número de bytes. De la mateixa manera, si es tracta d'emmagatzemar caràcters, únicament tindríem poder de representació per a 256 caràcters diferents. Creieu que és suficient? Busqueu informació sobre codis de representació de caràcters i veureu amb quines mides treballen habitualment. En C hi ha uns pocs tipus de dadeselementals. Els que veurem en aquesta pràctica són els següents:

char int float double

Ocupa un sol byte i permet representar caràcters (en realitat, internament el sistema desa els caràcters com a tipus int) Sol ocupar 2, 4 o 8 bytes (en funció de l'arquitectura del processador) i permet representar números sencers (positius i negatius) Ocupa 4 bytes (32 bits) i permet representar números ambdecimals del rang 3,4*10 –38 a 3,4*1038. La notació binària que s'utilitza és la de punt flotant de precisió simple. Ocupa 8 bytes (64 bits) i permet representar números amb decimals del rang 1,7*10 –308 a 1,7*10308. La notació binària que s'utilitza és la de punt flotant de precisió simple.

Així mateix, existeixen modificadors que permeten modificar la mida o el comportament d'aquests tipus dedades. Aquests modificadors són els següents:

short long signed

En alguns processadors permet reduir la mida del tipus int En alguns processadors permet incrementar la mida dels tipus int i long Aplicat al tipus int, permet que s'utilitzi per emmagatzemar números positius i negatius (és el comportament per defecte del tipus int)

unsigned Aplicat al tipus int, només utilitza númerospositius i el que es fa és que el rang que ocupen habitualment els números negatius s'utilitza per afegir més números positius, així que es permet representar aproximadament el doble de números positius.

Aquests modificadors s'han de posar sempre davant del tipus de dades, per exemple: unsigned int, long double, short int, etc. Declaració de variables Ara que ja coneixem els diferents tipus de dadesbàsics del llenguatge C anem a aprendre com li podem indicar al programa que volem utilitzar unes determinades dades. En fer-li aquesta indicació, el sistema ens haurà de reservar un determinat espai de memòria on poder emmagatzemar aquestes dades i treballar amb elles. Caldrà que li diguem el tipus de dades que contindrà aquest espai i d'aquesta manera sabrà com codificar-les i quant espai els...
tracking img