Programació en C/Una tastada de C

La millor manera d'introduir un llenguatge de programació és veient codi. Per tant, comencem amb un conegut exemple:

Hola món![modifica]

#include <stdio.h>

int main(int argc, char** argv)
{
	printf("Hola món!");
	return 0;
}

No és pas un exemple molt espectacular, però serveix com a introducció a molts dels conceptes importants de C. D'executar-lo, la nostra consola ens contestarà amb un amigable:

Hola món!

No és complicat deduïr llavors que la línia encarregada d'escriure text per pantalla és printf("Hola món!");. Tanmateix, si provéssim d'escriure i compilar un codi només amb aquesta línia no ens funcionaria. Això és degut a que ens cal un punt d'entrada al programa. Dit d'una altra manera, hem de dir-li al compilador on comença el nostre codi. Les encarregades de fer això són una pila de línies del codi que hem vist abans:

int main(int argc, char** argv)
{
    ...
    return 0;
}

La línia int main(int argc, char** argv,) juntament amb les claus i el codi que delimiten són la definició d'una funció. De les funcions ja en traurem l'entrellat més endavant, però com a concepte general és important considerar les funcions com els blocs independents en els quals s'organitza el codi. La funció main n'és un cas particular perquè tot programa escrit en C la requereix. És la funció que es crida primer en qualsevol programa, i, per tant, el seu punt d'entrada.

Dins del main també hi trobem una línia de codi que no sembla tenir massa propòsit en aquest cas concret: la instrucció return 0;. En qualsevol altra funció, return serveix per tornar un valor després d'executar el codi de la mateixa. En el cas del main té valor més aviat de retrocompatibilitat amb antics programes. De nou, la matèria de les funcions no és prioritària per ara.

La línia que ens queda és la que ens permet fer servir printf();. #include <...> serveix per importar una biblioteca. Les biblioteques serveixen per guardar codi ja fet i estalviar temps al programador, que no haurà de programar-ho absolutament tot sinò que podrà fer servir codi ja escrit per fer tasques genèriques. Per fer una analogia al món de la cuina, suposem que volem fer diversos plats, però que tots ells necessiten que fem una picada. La biblioteca ens permet no haver de preparar aquesta picada per cadascun dels plats, sinó que simplement la fem abans i l'aprofitem en tots ells. El cas concret de la biblioteca stdio.h serveix per dur a terme operacions d'entrada/sortida, que significa intercanviar informació amb l'usuari. Més endavant ja en parlarem més exhaustivament.

Conclusió[modifica]

Amb aquest capítol s'ha tingut una lleugera presa de contacte amb el llenguatge. D'ara endavant s'explicaran els conceptes vistos aquí (i molts d'altres) més exhaustivament i de manera molt més concreta. Per ara si no s'ha entès tot al peu de la lletra no passa res, és un primer pas sobre el qual s'assentaran les bases del llenguatge C.