system("PAUSE"); en linux

Hola

Quisiera preguntar si sabriais decirme un equivalente a system("PAUSE"); en linux, estoy programando en C
printf("Press 'Enter' to continue: ... ");
while ( getchar() != '\n')
;

Con esto simularias un pause hasta que presione enter.

En linux creo que no tienes un system(pause) a lo windows.
Obviamente hay un equivalente al system(), **pero** la mierda de system("pause") es una **guarrada** tremenda.

Encima con su mensaje cutre predefinido... pfff. Mucho mejor lo que ya te han dicho, o metodos similares.

Se puede saber para que lo quieres?
uhmm yo en mi compilador (bajo windows) para hacer un pause uso un
"getch();"
pero un conocido que trabaja bajo lliurex(edubuntu pa los amigos xD), creo que el mismo compilador (pero de ide el editor de notas GEDIT xD)
no le va el getch(); y el getche(); en linux que es ¿¿ "getchar();" ?? ¿?

Lo veo un poco ilogico C es C no deberia cambiar de un SO a otro SO puede que de un compilador a otro tal vez hayan cambios pequeños (por ejemplo de turboC a MINGW)
pero esque usamos MINGW en windows y su version linux el mismo compilador si no me equivoco y eso enserio que me mata y mucho [mad] [mad] [mad]
JanKusanagi escribió:Obviamente hay un equivalente al system(), **pero** la mierda de system("pause") es una **guarrada** tremenda.

Encima con su mensaje cutre predefinido... pfff. Mucho mejor lo que ya te han dicho, o metodos similares.

Se puede saber para que lo quieres?



es para un mero ejercicio de clase con un menu, debe llamar a funciones y tras mostrar el resultado volver a mostar el menu, necesito pausar la ejecucion para que el resultado se vea, ahora tal y como lo tengo me muestra el menu sin dar tiempo a ver el resultado.
klausus escribió:uhmm yo en mi compilador (bajo windows) para hacer un pause uso un
"getch();"
pero un conocido que trabaja bajo lliurex(edubuntu pa los amigos xD), creo que el mismo compilador (pero de ide el editor de notas GEDIT xD)
no le va el getch(); y el getche(); en linux que es ¿¿ "getchar();" ?? ¿?

Lo veo un poco ilogico C es C no deberia cambiar de un SO a otro SO puede que de un compilador a otro tal vez hayan cambios pequeños (por ejemplo de turboC a MINGW)
pero esque usamos MINGW en windows y su version linux el mismo compilador si no me equivoco y eso enserio que me mata y mucho [mad] [mad] [mad]

El problema no es del compilador sino que las funciones getch() y getche() vienen declaradas en el fichero conio.h el cual no es parte del del lenguaje C, ni forma parte del standard. Las funciones de conio.h son para MS-DOS e implementadas por turbo/borland c++ y creo que Visual c++. Lo mejor que puedes hacer es no usar esas funciones ni hacer uso del conio.h si quieres que tu codigo sea portable.

Respecto a un equivalente a getch puedes leerte esto
sleep... y eso es lo que debería de estar haciendo [carcajad]
Gracias a todos por vuestras respuestas ya os comentare.
codestation escribió:
klausus escribió:uhmm yo en mi compilador (bajo windows) para hacer un pause uso un
"getch();"
pero un conocido que trabaja bajo lliurex(edubuntu pa los amigos xD), creo que el mismo compilador (pero de ide el editor de notas GEDIT xD)
no le va el getch(); y el getche(); en linux que es ¿¿ "getchar();" ?? ¿?

Lo veo un poco ilogico C es C no deberia cambiar de un SO a otro SO puede que de un compilador a otro tal vez hayan cambios pequeños (por ejemplo de turboC a MINGW)
pero esque usamos MINGW en windows y su version linux el mismo compilador si no me equivoco y eso enserio que me mata y mucho [mad] [mad] [mad]

El problema no es del compilador sino que las funciones getch() y getche() vienen declaradas en el fichero conio.h el cual no es parte del del lenguaje C, ni forma parte del standard. Las funciones de conio.h son para MS-DOS e implementadas por turbo/borland c++ y creo que Visual c++. Lo mejor que puedes hacer es no usar esas funciones ni hacer uso del conio.h si quieres que tu codigo sea portable.

Respecto a un equivalente a getch puedes leerte esto


Vaya asi que la libreria conio es pasa uso con MS-DOS vaya...
Todo hay que decirlo pese a que uso windows xp en clase usamos el devc++ (yo tengo el Xdevc++) y como compilador el de serie que lleva (MINGW).
Es curioso porque la libreria "conio.h" no es la misma la del devc++ que la del turboC de borland, de hecho muchas funciones que nos querian enseñar que hacian uso del conio.h no ivan...

Lo curioso de todo esto es que yo no uso nunca ni linko a la conio.h ni conio.c (la original de borland instalada por nosotros) solo uso stdlib.h y stdio.h y con estas librerias funciona tanto el getch como getche como gets, puts, system....
Me dejo un poco loco porque tenia entendido que para usar el getch/getche, system etc... hacian falta el uso de conio.
Pero en nuestro caso no es necesario en absoluto O.Ou

Otra curiosa es que la conio solo hizo falta para el gotoXY (y encima la conio de borland la del devc++ no iva ni patras) y el famoso clearscreen nunca nos va linkemos lo que linkemos por eso tenemos que usar una mierda de system("CLS");

Lo peor de todo es que si tu no me dices nada yo no tenia ni papa respecto a lo de conio... que asco de profesores enserio cawento cawento cawento cawento
8 respuestas