Open In App

C++ Wait for User Input

Last Updated : 27 Nov, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

Waiting for User input is common functionality in any program requiring some form of user intervention. Whether it is halting the execution to see the output produced, or is it for taking in user input, halting the execution for input is one of the most common tasks that are performed by a program. In this article, you will learn different methods to wait for user input for continuing the execution of the program in C++.

1. Halting execution using getch()

getch function present in the conio.h library will be used to make the program wait for user input. The function takes in a single character from the standard input (stdin) and returns an integer. This does not include modifier keys. Therefore, the characters need to be literal or a control sequence specifier (ex. Enter, Tab, Backspace, etc.). The following is a code that displays “Hello World!” and then waits for user input. Upon receiving it displays “You just pressed a key”.

Example:

C++




// C++ Program to 
// Wait for user input
// Using getch function
#include <iostream>
#include <conio.h>
  
using namespace std;
  
int main() {
  
    cout << "Hello World!";
      getch();
      cout << "You just pressed a key";
    return 0;
}


Output:

 

Upon pressing any key.

 

Explanation: Firstly we imported the necessary libraries. Then we displayed Hello World! in the first statement of the code. After which a call to the getch function is made. This halts the execution of the program until a key has been pressed. Upon pressing the key, the execution resumes and the next statement is executed displaying You just pressed a key. 

In this way, the program could be made to wait for user input.

2. Halting execution using cin.get()

cin.get( ) function present in the conio.h library could also be used to make the program wait for user input. The function takes in characters from the standard input until a newline character is encountered. This does not include modifier keys. The following is a code that displays “Hello World!” and then waits for user input. Then we enter a single character (s in this case) and press Enter. After which it displays “You just pressed a key”.
Example:

C++




// C++ Program to
// Wait for user input
// Using cin.get function
#include <iostream>
  
using namespace std;
  
int main()
{
  
    cout << "Hello World!";
    cin.get();
    cout << "You just pressed a key";
    return 0;
}


Output: 

 

Then press the s key and then enter.

 

3. Halting execution using getc()

getc function present in the cstdio.h library could also be used to perform the same task. The function takes in input a stream to which the data is to be displayed. The stream will be stdin in our case since we want to use it as input. This function returns the character read as an unsigned char cast to an integer. The following is a code that displays “Hello World!” and then waits for user input. Then we enter a single character (c in this case) and press Enter. After which it displays “You just pressed a key“.

Example:

C++




// C++ Program to
// Wait for user input
// Using getc function
#include <iostream.h>
  
using namespace std;
  
int main()
{
  
    cout << "Hello World!";
    getc(stdin);
    cout << "You just pressed a key";
    return 0;
}


Output:

 

Then press the c key and then enter.

 

4. Using system(“pause”)

system function found inside the stdlib.h header file could also be used to wait for user input. By passing in pause as an argument (which is a command for a command prompt that halts the execution until a keystroke is pressed) the program execution could be halted. 

Example:

C++




// C++ Program to
// Wait for user input
// Using system
#include <iostream>
  
using namespace std;
  
int main()
{
  
    cout << "Hello World!";
    system("pause");
    cout << "You just pressed a key";
    return 0;
}


Output:

 

After pressing any key

 



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads