![]() |
Mòdul 2
![]() |
Fonaments de
Programació. Llenguatge C/C++![]() |
Pràctica ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
![]() |
|
Pràctica
d'ampliació ![]() ![]() |
Les variables tipus char Una variable tipus char serveix per representar indistintament un caràcter i un enter petit, la relació es fa a través del codi ASCII. En aquesta pràctica començarem a familiaritzar-nos amb aquests tipus de variables.
|
||||||||
![]() |
Desenvolupament de la
pràctica
Abans de tot, creeu un nou espai de treball per aquest segon mòdul amb el nom: m2, per això heu de seleccionar File->New -> fitxa Workspace, Blank Workspace. Anomeneu a l'espai de treball m2, podeu definir-lo a la carpeta c:\curs visual c++ de la mateixa forma que vàreu fer a la primera pràctica del mòdul 1. Aneu afegint un projecte nou del tipus Win32 Console Application per a cada nova pràctica o exercici amb els noms que cada vegada es proposi. Definiu un projecte nou anomenat m2p01 i afegiu-li un arxiu de font C/C++ anomenat m2p01.cpp. Escriviu el següent codi:
Explicació del programa En aquest programa declarem dues variables anomenades a i b:
Ambdues són del tipus char. Ambdues seran emmagatzemades en un byte o octet de la memòria. L'única diferència entre una i altra és com s'interpretarà un dels bits de l'octet. La variable a podrà emmagatzemar un valor enter comprès entre -128 i 127 i la variable b, que porta el modificador unsigned, podrà emmagatzemar un valor enter entre 0 i 255. Anem a veure amb deteniment cada part del programa:
La primera és una sentència d'assignació que assigna el valor 66 a la variable a. Per veure el contingut d'aquesta variable per pantalla es fa servir la funció printf(). Si fem servir el codi de tipus %c es veurà en pantalla el caràcter ASCII associat al número 66, que és una 'B'. Si fem servir el codi de tipus %d es veurà en pantalla el número 66.
En aquestes tres línies l'assignació es fa mitjançant el caràcter ASCII directament. Aquest s'ha de posar entre cometes senzilles. La resta és exactament igual, la variable a contindrà el caràcter 'A' o el número 65. Per imprimir per la pantalla 'A' s'ha de fer servir el codi de tipus %c i per imprimir per pantalla 65 s'ha de fer servir el codi de tipus %d.
En aquest tros de programa podem veure dos
aspectes importants d'aquest tipus de variables: el primer és que les variables tipus char poden ser part
d'expressions, de la mateixa forma que altres variables numèriques. El segon
aspecte fa referència al modificador unsigned. Com el contingut de la
variable a és 65 i al sumar 65 + 100 dóna 165, és a dir,
un número més gran que el màxim
valor que pot emmagatzemar una variable del tipus char amb signe. Quan
s'escriu el valor d'a amb el codi de tipus %d, el número que surt per pantalla no correspon a 165 sinó a -91. La variable
b, declarada com unsigned sí dóna el valor correcte 165. En els dos casos, amb la
variable a i amb la variable b s'escriu el valor correcte de 'Ñ'
si fem servir el codi de tipus %c.
Per últim, es pot comprovar en aquest tros de programa que es pot barrejar en una expressió les constants del tipus caràcter ASCII amb els números enters. El resultat de l'execució del programa serà el següent:
|