Pregunta

Muchas de las personas aquí me dicen que deje de usar clrscr(), getch() etc. y he comenzado a aprender C ++ con la biblioteca estándar y ahora que quiero seguir la biblioteca estándar ¿Cómo detendría la salida de la salida inmediata después de la ejecución?

include <iostream.h>
include <conio.h> // Instead of using this

    void main(){
        cout << "Hello World!" << endl;
        getch(); // Instead of using this
        }
¿Fue útil?

Solución 2

Solo reemplazar getch() con cin.get() como esto:

include <iostream>

using namespace std;

void main()
{
    cout << "Hello World!" << endl;
    cin.get();
}

Para más detalles ver Get () Function Documation. Solo para referencia, puede hacer esto, por ejemplo, para esperar hasta que el usuario presionó un carácter específico:

void main()
{
    cout << "Hello World!" << endl;
    cout << "Press Q to quit." << endl;
    cin.ignore(numeric_limits<streamsize>::max(), 'Q');
}

Otros consejos

Puede ejecutar directamente el binario desde la línea de comandos. En ese caso, después de que el programa esté terminado de ejecutar la salida, aún estará en el terminal y puede verlo.

De lo contrario, si está utilizando un IDE que cierra el terminal tan pronto como se complete la ejecución, puede usar cualquier operación de bloqueo. Lo más simple es scanf (" %c", &dummy); o cin >> dummy; o incluso getchar (); Y lo que Adriano ha sugerido. Aunque debe presionar la tecla ENTER, ya que son operaciones de entrada almacenadas.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top