Dev - C++ - ver desarrollo programa

   
Vista:

ver desarrollo programa

Publicado por ramongol (2 intervenciones) el 25/12/2009 21:21:22
Compilo un pequeño programa. Luego lo ejecuto. Devería aparecer el resultado en una nueva ventana. Pero a mi nunca me muestra nada, no se abre ninguna nueva ventana. Qué debo hacer?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:ver desarrollo programa

Publicado por powersgame (7 intervenciones) el 27/12/2009 03:51:33
Hola.

Si estás trabajando en windows el problema puede ser que te falte implementar un método de parada. Es posible que al ejecutar tu programa, este se ejecute integro y el sistema cierre la ventana antes si quiera de darte cuenta de que se ha ejecutado, para solucionar este problema se puede implementar un método para que la ejecución espere, por ejemplo hasta que se pulse una tecla. Así una posible solución puede ser añadir antes de la sentencia return del main, la sentencia system ("pause");

system es una función definida en la cabecera stdlib.h por lo que tendrás que incluirla. Esta función se encarga de enviar al interprete de comandos un comando para que lo ejecute. El comando pause se encarga de escribir en pantalla un mensaje de texto y esperar la pulsación de una tecla.

Espero que te sirva.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ver desarrollo programa

Publicado por ramon gonzalez (2 intervenciones) el 27/12/2009 23:51:24
Gracias por tu respuesta. Te cuento que trabajo en Linux Ubuntu. Sin embargo ya hice lo que me indicaste y sigo por lo mismo. Me podrías ayudar un poco más o un pocazo?

Gracias por tu interés.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ver desarrollo programa

Publicado por powersgame (7 intervenciones) el 28/12/2009 04:19:14
Hola de nuevo xD

GNU/Linux, muy buena elección. Esto me ha motivado xD

Bueno, empecemos por aclarar que en GNU/Linux, en un principio, la sentencia system ("pause"); no tiene porqué tener sentido. Como bien te dije la función system envía un comando al interprete de comandos (por defecto en Ubuntu es bash), como el comando pause no tiene porqué ser reconocido por bash lo normal es que te muestre un error de comando no encontrado. Ejemplos de cómo podríamos utilizar la función system en Linux podrían ser system("ls -l"); o system ("clear"); La función system depende en gran medida del sistema en el que se ejecute pues cada sistema operativo tiene su interprete de comandos, los cuales reconocen distintos comandos.

Como no dispongo de mucha información por tu parte voy a ser lo más general posible. Primero comprobaremos que disponemos del software de desarrollo necesario, luego te explicaré como compilar y ejecutar un programa compuesto por un único fichero fuente en C++ haciendo uso de la consola de comandos.

No sería mala idea comprobar que tienes instalados los paquetes necesarios para compilar tus proyectos. Creo que con el paquete build-essential debe bastar para un proyecto que solo utilice las bibliotecas estandar, pues entre otros tiene como dependencias el compilador de GNU g++, las bibliotecas estandar y make para crear scripts de compilación. Para instalar el paquete bastaría con introducir el siguiente comando en una shell:

sudo apt-get install build-essential

Quizás desees ser más meticuloso con los paquetes que instalas, en tal caso puedes instalar cada paquete por separado en vez de instalar build-essential.

Si estás programando en un entorno de desarrollo tipo anjuta o eclipse y compilas haciendo uso de una función del programa, te recomiendo que no lo hagas. Esto no es más que una recomendación. Opino que los entornos de desarrollo facilitan mucho la labor del programador pero no ayudan al aprendizaje inicial de este, sobre todo en lo concierne a las tareas de compilación y organización del proyecto.

Mi recomendación es que para escribir tu código utilices un editor de textos tipo emacs, vim, geany o incluso el propio editor de GNOME gedit. Luego prueba a compilar y ejecutar tu programa haciendo uso de la consola de comandos y las herramientas oportunas.

Para que entiendas la tarea de compilación te voy a decir paso a paso cómo compilar un proyecto que consta de un único fichero fuente. Para ayudarme en la explicación compilaré un pequeño programa a modo de ejemplo.

- Te abres el editor de textos (yo utilizo emacs) y escribes el código en C++ (yo escribiré el mítico hola mundo)

#include <iostream>
using namespace std;

int main () {
cout << "Hola mundo" << endl;
return 0;
}

- Guardas el código en un fichero .cpp (mi fichero será /home/usuario/hola.cpp)

- Abres una shell o consola de comandos y te situas en el directorio en el que se encuentra el fichero (en mi caso cd /home/usuario)

- Compila haciendo uso de g++. El comando puede tener la siguiente forma: g++ fichero.cpp -o nombre_ejecutable
(asi yo ejecutaré el comando: g++ hola.cpp -o hola_mundo).
Este caso es muy sencillo. Cabe destacar que la cosa se puede complicar un poco, por ejemplo cuando se desea compilar un proyecto compuesto por varios ficheros fuentes, o enlazar nuestro proyecto con bibliotecas externas. Es por ello que es necesario estudiar un poco el compilador que utilizamos y cómo realiza este la tarea de compilación: los ficheros intermedio que se crean, las distintas fases de la que consta, etc.

- Fijate en los errores y mensajes que devuelve el compilador, ya que puede suceder que el código contenga errores y no se compile.

- Por último para ejecutar el programa compilado teclea el siguiente comando ./nombre_ejecutable (yo haría ./hola_mundo).

Es muy importante conocer cómo funciona el compilador que utilizamos, pues es una herramienta esencial que llevó la programación a manos de muchos. Si te interesa el tema puedes expandir conocimientos buscando información sobre el compilador g++ y la tarea de compilación. Puedes intentar compilar programas compuestos por varios ficheros fuentes, o enlazar con bibliotecas externas. Por último puedes crear scripts para la herramienta make que automaticen la tarea de compilación.

Espero que con esto te funcione y consigas lo que quieres. Aun así, si con esto no has conseguio compilar y ejecutar tu programa agradecería que aportaras algo más de información como el lenguaje en el que programas, qué herramientas utilizas, el código que deseas compilar y ejecutar, el nivel que consideras que tienes tanto en Linux como programando, o ser más explícito a la hora de explicar cual es tu problema o que quieres llegar a conseguir.

¡Suerte!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar