Programació en C/Variables
Com la majoria dels llenguatges de programació, C és capaç d'utilitzar i processar variables anomenades i el seu contingut. Les variables són simplement noms utilitzats per referir-se a alguna localització en memòria - una localització que té un valor amb què estem treballant.
Pot ajudar pensar en variables com a un lloc per a guardar un valor. Pot pensar en una variable com si fos el mateix que el seu valor assignat. Així, si té una variable i allò s'inicialitza (se diu per primera vegada que és igual) a 4, llavors segueix que i+1 serà igual a 5.
Ja que C és un llenguatge de programació de nivell relativament baix, abans que un programa C pugui utilitzar memòria per emmagatzemar una variable ha de demanar la memòria necessària per a guardar els valors de la variable. Això es fa declarant variables. Declarar variables és la manera en què un programa C mostra el nombre de variables que necessita, com s'anomenaran, i quanta memòria necessitaran.
Dins del llenguatge de programació C, quan es manegen i es treballa amb variables, és important saber el tipus de variables i la mida d'aquests tipus. Ja que C és un llenguatge de programació de nivell baix, aquests aspectes del seu funcionament poden ser específics del maquinari - això vol dir, com es fa funcionar el llenguatge en un tipus de màquina pot ser diferent de com es fa funcionar en un altre.
Totes les variables en C son "tipades". Vol dir que totes les variables declarades s'han d'assignar com a cert tipus de variable.
Declarant, Inicialitzant, i Assignant Variables
[modifica]Aquí hi ha un exemple de declarar un enter, que hem anomenat qualque_nombre. (cal adonar-se del punt i coma al final de la línia; així és com separa el seu compilador una sentència de programa d'una altra.)
int qualque_nombre;
Aquesta sentència significa que estem declarant espai per a una variable anomenada qualque_nombre, la qual sera usada per a guardar-hi un nombre enter (int, de integer en anglès, que vol dir enter. Cal adonar-se què hem de especificar el tipus de dada que la variable guardarà. Hi ha paraules clau per fer això - les vorem a la següent secció.
Es poden declarar múltiples variables amb una sola sentència, així:
int unnombre, unaltranombre, unaltrames;
També podem declarar i assignar contingut a una variable alhora. Això s'anomena inicialització perquè és el temps "inicial" en què un valor s'ha assignat a la variable:
int qualque_nombre=3;
A C, totes les declaracions de variables (amb l'excepció de les globals) s'haurien de fer al començament d'un bloc. Alguns compiladors no el deixen declarar les seves variables, introduir algunes sentències, i llavors declarar més variables. Les declaracions de variables (si n'hi ha cap) sempre haurien de estar a la primera part de qualsevol bloc.
Després de declarar variables, se pot assignar un valor a una variable més tard emprant una sentència com aquesta:
qualque_nombre=3;
També es pot assignar a una variable el valor d'una altra, de la següent manera:
unnombre = unaltranombre;
o assignar a múltiples variables el mateix valor amb una sentència:
unnombre = unaltranombre = unaltrames = 3;
Això és perquè l'assignació (x = y) torna el valor de l'assignació. x = y = z és realment una manera simplificada per a x = (y = z).
Anomenant Variables
[modifica]Els noms variables a C es constitueixen per lletres (majúscules i minúscules) i dígits. El caràcter subratllar("_") també és permès. Els noms no han de començar amb un dígit. A diferència d'algunes llengües (com Perl i alguns dialectes de BASIC), C no utilitza caràcters de prefix especials als noms de variables.
Alguns exemples de noms vàlids (però no massa descriptius) de noms de variables a C:
foo
Bar
BAZ
foo_bar
_foo42
_
QuUx
Alguns examples de noms de variables invàlids a C són:
2foo (no ha de començar amb un dígit)
my foo (no es permeten els espais)
$foo ($ no permès -- només lletres, dígits i _ )
while (les paraules clau del propi llenguatge C no estan permeses)
Com suggereix l'últim exemple, certes paraules es reserven com paraules clau en el llenguatge, i aquests no es poden utilitzar com a noms de variables.
A més a més hi ha certs conjunts de noms que, encara que no son paraules clau del llenguatge, són reservades per a una raó o un altre. Per exemple, un compilador C podria utilitzar certs noms "entre bastidors", i això podria provocar problemes per a un programa que intenta utilitzar-los. També, alguns noms es reserven per a l'ús futur possible en la biblioteca estàndard de C. Les regles per determinar exactament què es reserven noms (i en quins contexts se'ls reserven) són massa complicades per descriure aquí, i com a principiant no necessita preocupar-se'n molt de cap manera. Per ara, només evitar noms que utilitzen que comencen amb un caràcter subratllar.
Les regles per a anomenar les variables dins C també s'apliquen a altres construccions del llenguatge, com els noms de les funcions, i les macros, les quals seran explicades més endavant.