Duda Novato en C

smintcs

Estoy intentando aprender C, ya tengo un compilador (Dev-C++), y un manual que estoy siguiendo, pero ay una cosa que no entiendo:

No se como hacer para que lo que he hecho se vea, es decir yo lo paso al compilador, lo compilo y hasta ahi bien.

Cuando abro el .exe se me abre la tipica ventanita pero se cierra nada mas abrirse.

El codigo que tengo es este:

#include <studio.h>
int main()
{
printf("Enpezando");
return 0;
}

Ya se que sera una tonteria pero me gustaria que se viese lo q voy haciendo en el programa para saber si me sale bien, he buscado y encontre que tendria que añadir

system("PAUSE");

o

getch(); pero no se donde iria esto, creo que antes del return pero no se

Bueno pues eso haber si alguno me puede ayudar gracias

SouL

si, antes del return, podias haberlo probao, a veces se aprenden cosas probando xD

aLeX

Al final del código, antes del return. Lo que estás haciendo es decirle a tu programa que lea por teclado. Hasta que no pulses el teclado no va a finalizar.

Seguramente necesites incluir alguna librería para el System("Pause"). No estoy seguro, hace años que no toco eso. Para el getch creo que necesitaras alguna tipo string.h.

Yo en tu lugar me dejaría de esas cosas, abriría una ventana de dos (inicio, ejecutar, cmd.exe) y me iría al directorio donde tienes el .exe para ejecutarlo. Así aunque acabe el programa no se te cerrará la ventana.

smintcs

no si probarlo lo habia provao las dos cosas va a ser eso de incluir la libreria

weno gracias

raul84

Para el getch(); tienes que añadir la cabecera conio.h, pero solo si usas windows. En linux no va el conio.
Para system("pause") no lo se.

smintcs

A pos si ahora ya funciona gracias

Kaos-Etiliko

te sobra todo el return no?

RoDRa

le sobra le sobra XDDD

CeeC

Sobra pero es "políticamente correcto" xD, sino lo adecuado sería void main(void)

Saludos.

ValaV

me parece que ese compilador peta o advierte si no pones el return

cabron

Un apaño que no requiere que cambies nada del código, es que ejecutes los programas desde la línea de comandos, y te devolverá al prompt cuando termine la ejecución, en lugar de cerrarte la ventana.

CeeC

#10 No es sólo ese compilador y es normal porque se está especificando que main devuelve un int. Si no pone el return te dará warning por no meterlo. El programa se compilará y ejecutará sin problemas ya que un warning no es un error.

Por eso void -> no return y si se retorna tipo se le debe meter un return, al menos, como dije antes, para que sea "políticamente correcto" por decirlo de alguna forma xD.

Saludos.

DMH

ya se que es cutre pero yo cuando empezaba metia un scanf al final de programa para que se parara esperando que apretara una tecla.. puede servirte aunque si ya te has mirado lo del system pause y lo del getch no vale la pena

B

Si no recuerdo mal la libreria del getch(); es una de estas dos:
#include <stdio.h>
#include <conio.h>
Estoy en q va a ser la primera pq es lal libreria de la E/S estandar.
Bueno ademas me imagino q el dev c++ debe tener una opcion de ejecucion, de esa forma puedes probarlo directamente y al terminar la ejecucion vuelve al dev. Asi te ahorras el engorro de ir de ventana en ventana.

B

Par ami que lo que da el error es el "eNpezando, que le duele al compilador.

W

La solución es facil, abrir dos y iniciar el programa desde alli, como bien han dicho por arriba, aunque si vas a empezar te recomiendo el turbo c...

12 días después
SeiYa_Banned

Para el getch es conio.h, para el system("PAUSE"); es dos.h y la que has puesto arriba de studio.h es stdio.h sin la u.

PeLoTaSo

#7 No le sobra, lo correcto es lo que ha puesto él, si una función se supone que devuelve un int, lo correcto para que el programa esté bien es que lo de vuelva, sino cuando vayas a compilar el compilador te devolverá un warning, y lo primero que me enseñaron en la universidad es que ninguna práctica podía devolver un warning.

Usuarios habituales