25.01.2015 Views

Instrucciones en PDF - Elisa Schaeffer

Instrucciones en PDF - Elisa Schaeffer

Instrucciones en PDF - Elisa Schaeffer

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

CAPÍTULO 7. PROGRAMACIÓN 135<br />

De hecho, gcc no es un sólo compilador, pero un conjunto de compiladores. Desde su página<br />

http://gcc.gnu.org/ uno puede descargar otras herrami<strong>en</strong>tas útiles también. En la página<br />

http://www.thefreecountry.com/compilers/cpp.shtml hay una lista larga de compiladores<br />

gratuitos para C y C++. El uso de librerías adicionales es común <strong>en</strong> los programas<br />

<strong>en</strong>scritos <strong>en</strong> C o C++. Un ejemplo de tales librerías es BOOST [5].<br />

Para fines de demostración, incluyemos un programa muy pequeña que no hace nada muy impresionante:<br />

para int<strong>en</strong>tar a compilar, ejecutar y modificar el programa, se supone que lo t<strong>en</strong>gan<br />

guardado <strong>en</strong> un archivo cprog.c:<br />

#include <br />

int main(int argc, void* args) {<br />

int i, prev = 0, curr = 1, temp;<br />

printf("Hello, world!\nF(1-10): 0 ");<br />

for (i = 0; i < 10; i++) {<br />

temp = curr;<br />

curr = prev + curr;<br />

prev = temp;<br />

printf("%d ", curr);<br />

}<br />

printf("\nBye!\n");<br />

return 0;<br />

}<br />

Al compilar, por defecto el ejecutable creado reside <strong>en</strong> el archivo a.out, pero con la opción<br />

-o se puede dirigirlo directam<strong>en</strong>te bajo otro nombre:<br />

> gcc cprog.c<br />

> ./a.out<br />

Hello, world!<br />

F(1-10): 0 1 2 3 5 8 13 21 34 55 89<br />

Bye!<br />

> gcc -o fibo cprog.c<br />

> ./fibo<br />

Hello, world!<br />

F(1-10): 0 1 2 3 5 8 13 21 34 55 89<br />

Bye!<br />

><br />

Los programas de C++ están compuestas por clases, mi<strong>en</strong>tras los de C están estructurados <strong>en</strong> subrutinas.<br />

En ambos l<strong>en</strong>guajes, se suele separar definiciones de implem<strong>en</strong>tación. En C, las definiciones<br />

de pone <strong>en</strong> archivos tipo .h y <strong>en</strong> C++ <strong>en</strong> archivos tipo .hpp. El código de C se pone <strong>en</strong><br />

archivos .c y lo de C++ <strong>en</strong> archivos tipo .cpp.<br />

Como un ejemplo simple de un programa <strong>en</strong> C++, t<strong>en</strong>emos el archivo sigui<strong>en</strong>te de definiciones<br />

bajo el nombre cu<strong>en</strong>ta.hpp:<br />

class Cu<strong>en</strong>taBancaria {<br />

private:<br />

double balanceActual;

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!