Foro de elhacker.net

Foros Generales => Dudas Generales => Mensaje iniciado por: Orb en 14 Diciembre 2015, 12:57 pm



Título: ¿Porque no compila?
Publicado por: Orb en 14 Diciembre 2015, 12:57 pm
Buenas!
Instalé Codeblocks, en concreto el paquete de instalación que te trae el MinGW, pero cuando creo un nuevo archivo en C e introduzco por ejemplo este código ;
Código:
#include <stdio.h>
int main(void){
printf("Prueba");
}

Y cuando hago Build y Run lo único que me aparece es una ventana de msdos sin ningún contenido.Cabe destacar que lo que he estado haciendo hasta ahora ha sido todo en ubuntu, usando la consola y el gedit, por lo que quizás se me esté pasando algo.

Un saludo y gracias


Título: Re: ¿Porque no compila?
Publicado por: Kaxperday en 14 Diciembre 2015, 12:59 pm
Comprueba que tienes gcc instalado y declarada como variable del entorno. :P

Edito: A bueno, si lo has corrido si que lo has llegado a compilar, prueba a poner getch(); al final justo antes del return 0; (que te falta).

Código
  1. #include <stdio.h>
  2. int main(void){
  3. printf("Prueba");
  4. getch();
  5. return 0;
  6. }

Da más detalles, ¿al compilar genera un archivo ejecutable o no?.

Saludos.


Título: Re: ¿Porque no compila?
Publicado por: Orb en 14 Diciembre 2015, 13:14 pm
Comprueba que tienes gcc instalado y declarada como variable del entorno. :P

Edito: A bueno, si lo has corrido si que lo has llegado a compilar, prueba a poner getch(); al final justo antes del return 0; (que te falta).

Código
  1. #include <stdio.h>
  2. int main(void){
  3. printf("Prueba");
  4. getch();
  5. return 0;
  6. }

Da más detalles, ¿al compilar genera un archivo ejecutable o no?.

Saludos.

Hola Kaxperday, gracias por responder.
El return 0 y el getchar no me habían sido indispensables hasta ahora que me he bajado el CodeBlocks, y por lo que veo que comentas me imagino que lo serán.
Si, me genera un ejecutable en el escritorio, y respecto a lo anterior, he añadido esas dos sentencias de código pero nada, sigue pasando lo mismo, se abre una ventana de msdos sin nada.
P.D:¿¿He de declarar una variable de entorno haciendo referencia al compilador??

Un saludo


Título: Re: ¿Porque no compila?
Publicado por: Kaxperday en 14 Diciembre 2015, 13:25 pm
El return 0; deberías ponerlo ya que la función main debe devolver un entero según la tienes declarada.

Comprueba que tienes gcc instalado, abre una terminal y escribe gcc a ver si sale como declarada o no y si no está añadela como variable del entorno con el path donde tengas gcc.exe.

Mejor que getch() que puede no funcionar, usa este código:

Código
  1.    #include <stdio.h>
  2.    #include <windows.h>
  3.    int main(void){
  4.    printf("Prueba");
  5.    system("pause");
  6.    return 0;
  7.    }
  8.  

Y bueno, ya sabes comprueba que has creado un proyecto para para C/C++ antes, en codigo fuente añade el main.c/main.cpp pega eso, dale a compilar y ejecuta debería salir mensaje y no cerrarse. De todas formas por lo que dices también te debería salir ahora, luego si tienes gcc correctamente instalado, te compila y ejecuta no se me ocurre que puede fallar, busca un tutorial y reinstala.

Saludos.