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
Similar Reads
C++ Programming Language C++ is a computer programming language developed by Bjarne Stroustrup as an extension of the C language. It is known for is fast speed, low level memory management and is often taught as first programming language. It provides:Hands-on application of different programming concepts.Similar syntax to
5 min read
Non-linear Components In electrical circuits, Non-linear Components are electronic devices that need an external power source to operate actively. Non-Linear Components are those that are changed with respect to the voltage and current. Elements that do not follow ohm's law are called Non-linear Components. Non-linear Co
11 min read
Spring Boot Tutorial Spring Boot is a Java framework that makes it easier to create and run Java applications. It simplifies the configuration and setup process, allowing developers to focus more on writing code for their applications. This Spring Boot Tutorial is a comprehensive guide that covers both basic and advance
10 min read
Object Oriented Programming in C++ Object Oriented Programming - As the name suggests uses objects in programming. Object-oriented programming aims to implement real-world entities like inheritance, hiding, polymorphism, etc. in programming. The main aim of OOP is to bind together the data and the functions that operate on them so th
5 min read
Class Diagram | Unified Modeling Language (UML) A UML class diagram is a visual tool that represents the structure of a system by showing its classes, attributes, methods, and the relationships between them. It helps everyone involved in a projectâlike developers and designersâunderstand how the system is organized and how its components interact
12 min read
3-Phase Inverter An inverter is a fundamental electrical device designed primarily for the conversion of direct current into alternating current . This versatile device , also known as a variable frequency drive , plays a vital role in a wide range of applications , including variable frequency drives and high power
13 min read
Backpropagation in Neural Network Back Propagation is also known as "Backward Propagation of Errors" is a method used to train neural network . Its goal is to reduce the difference between the modelâs predicted output and the actual output by adjusting the weights and biases in the network.It works iteratively to adjust weights and
9 min read
30 OOPs Interview Questions and Answers [2025 Updated] Object-oriented programming, or OOPs, is a programming paradigm that implements the concept of objects in the program. It aims to provide an easier solution to real-world problems by implementing real-world entities such as inheritance, abstraction, polymorphism, etc. in programming. OOPs concept is
15 min read
Decorators in Python In Python, decorators are a powerful and flexible way to modify or extend the behavior of functions or methods, without changing their actual code. A decorator is essentially a function that takes another function as an argument and returns a new function with enhanced functionality. Decorators are
10 min read
What is Vacuum Circuit Breaker? A vacuum circuit breaker is a type of breaker that utilizes a vacuum as the medium to extinguish electrical arcs. Within this circuit breaker, there is a vacuum interrupter that houses the stationary and mobile contacts in a permanently sealed enclosure. When the contacts are separated in a high vac
13 min read