Enrere Mòdul 1
Fonaments de Programació. Llenguatge C/C++---
Pràctica    Resum teòric Exercicis

 
HOLA MÓN

L'objectiu d'aquesta pràctica és conèixer l'entorn Anjuta que arriba incorporat amb la distribució Linkat, per poder escriure, compilar i executar la primera aplicació senzilla.

El resultat d'aquesta pràctica serà només una aplicació que treu per pantalla el text "HOLA MON". Aquest és tradicionalment la primera aplicació que es fa en qualsevol llenguatge de programació. És una aplicació extremadament senzilla i amb ella aprendrem només com començar a escriure codi i construir aplicacions executables.

 

Desenvolupament de la pràctica
  • Anem a Menú principal/Aplicacions/Programació i executem Anjunta. Apareix una pantalla inicial on podem escollir entre varies opcions. Trieu l'opció Nou fitxer.

  • Apareixerà un quadre de diàleg com el següent:

  • Per aquesta pràctica deixeu C Source File com tipus d'arxiu. Anomeneu el fitxer com m1p01.c i  feu clic en D'acord.

    Ja podem escriure el codi del programa a la finestra de text. Escriviu el següent codi:

    /*m1p01.c - Hola món */

    #include <stdio.h> /*declaració de funció printf*/

    int main(){

        printf("HOLA MON\n");  

        return 0;

    }

     

     

     

     

     

     

  • Deixarem per al final l'explicació d'aquest codi.

  • Per executar el programa i veure quin és el resultat, anem a l'opció Munta  del menú que tenim en la part superior d'Anjuta i seleccionar:

           - Compila ( mètode abreviat tecla F9 ).

              En la part inferior de la pantalla  visualitza  l'ordre      que s'ha executat.

                     gcc -c "m1p01.c" -o "m1p01"

                     completat correctament.

           - Munta ( mètode abreviat tecla F11 ).

             Mireu en la part inferior de la pantalla per veure quina és l'ordre que acabem d'executar.

                     gcc  "m1p01.c" -o "m1p01"

                     completat correctament.

           - I per últim Executa ( F3 ).

  •  I s'ha creat l'arxiu executable m1p01 ..\Mòdul_1\m1p01

  • I si tot anat bé, veurem quelcom semblant a la següent finestra.

     

 

 

  • L' EID ( Anjuta ) ens permet tenir en un mateix entorn, l'edició, compilació i 'execució del nostre programa d'una manera integrada. Si tenim l'editor per una banda i el compilador per separat, hauriem de obrir una sessió del terminal. Es a dir, obre una sessió terminal, Aplicacions/Sistema/Terminal, adreçat a la carpeta on tens l'arxiu i executa:

             gcc m1p01.c -o m1p01  que compila i crea un arxiu executable m1p01

         Per executar-ho:  ./m1p01

  • En la part inferior de la pantalla d'Anjuta hi ha un seguit de pestanyes. Tria l'anomenada Terminal i en la finestra inferior pots fer el mateix que has fet des de el Terminal.

 

 

 

Explicació del programa

Ara farem una breu explicació del codi del programa "Hola món":

/*m1p01.c - Hola món */

#include <stdio.h> /*declaració de funció printf*/

int main(){

    printf("HOLA MON\n");

    return 0;

}

 

El primer que podem observar en el text del codi és els tres colors: verd, vermell, blau, groc i negre.

El text entre dues marques /* i */ es posa de color vermell, és el color predeterminat per als comentaris. A la pràctica següent farem servir altres formes de posar comentaris.

La paraula #include amb el color verd. Les paraules int, return es posen automàticament de color blau, és el color predeterminat per les paraules reservades de C i de les directives del preprocessador.

La resta del codi queda de color negre.

#include <stdio.h> indica al compilador que es farà servir alguna funció, la declaració de la qual es troba a l'arxiu de capçalera stdio.h. En aquest cas es tracta de la funció printf().

Tot programa C conté sempre la funció main(). Dins d'un programa C podem escriure més d'una funció, però obligatòriament hem de tenir la funció main() que és la que primer s’executarà. Les paraules int i return les explicarem més endavant.

L'única sentència d'aquest programa és una crida a la funció de la llibreria estàndard d'entrada i sortida: printf(). En aquest cas, la funció només té un argument que és una cadena de caràcters tancats entre dobles cometes. Aquesta cadena de caràcters conté caràcters per imprimir per pantalla i un codi de format especial: \n. Aquest és un codi de nova línia i serveix perquè, el que s'imprimeixi a la pantalla després, es faci a la següent línia.

Recordeu que tota sentència acaba amb el caràcter ; (punt i coma).

Les sigles GCC signifiquen GNU Compiler Collection (Col·lecció de compiladors GNU).  Com el seu nom indica és una colecció de compiladors de diferents llenguatges: C,C++, Objetive C, Chill, Ada, Fortran, y Java.

Aquest compilador es distribueix sota la llicencia ( General Públic License) lo que implica la seva lliure distribució.

Existeixen versions per pràcticament tots els sistemes operatius . Ve incorporat en la majoria ( per no dir en totes ) les distribucions de GNU/Linux. La versió DOS d’aquest compilador és el DJGPP i el podeu descarregar en la seva web oficial www.delorie.com/djgpp.

El desenvolupament de GCC utilitza un entorn obert i suporta múltiples plataformes. D’aquesta forma son milers de voluntaris de tot el mon que participen en el sèu desenvolupament.

El compilador GCC el podeu baixar des de la pàgina oficial del GCC: gcc.gnu.org.

És possible que al fer la instal·lació de la distribució Linkat no s’hagin instal·lat els paquets Anjuta o el compilador gcc-g++. Si aquest és el vostre problema, disposem de l’administrador de programari Red Carpet. Per fer aquestes actualitzacions feu clic a Sistema->Actualització de programari i a continuació introduïu la contrasenya d’administrador a la pantalla emergent que apareix ( si heu entrat com usuari ). Podeu comprovar el programari instal·lat i disponible.

Per compilar i executar el programa des de la linea d'ordres feu:

             gcc m1p01.c -o m1p01  que compila i crea un arxiu executable m1p01

            Per executar-ho:  ./m1p01

Opcions més comuns del compilador GCC.

             -c          Només compila. Crea els fitxers objectes però no l'executable.

             -o          Nom de l'executable.

             -l           Per enllaçar biblioteques. Ej: -lm enllaça la biblioteca matemàtica.

             -v          Mostra els passos de compilació.

             -L         Afegeix path a les rutes de cerca.

             -Wall    Activa molts missatges d'avis ( warning ). Útil per a nous  usuaris de gcc.

             -g         Genera informació pel depurador.

 

Extensions més comuns de fitxers.

     

             .c      Fitxer font de c.

             -cc    Fitxer font de c++.

             -h      Fitxer capçalera de c/c++ ( només útil per els #include).

             -s     Fitxer font en enssamblador.

             -i      Fitxer desprès de passar pel processador.

             -o     Fitxer objecte