-1

我正在尝试开发一个程序,它等待特定时间段的输入,并在 c++ 中一段时间​​后出来,就像我们在 atm 机器中所做的那样。任何人都可以尝试帮助我。

#include <iostream>
#include <ctime>
#include<string>
using namespace std;

int main(){
 string name;
 cout << "Enter your name: ";
 int endTime= 5;
 int i=0;
// cout<<endTime<<endl; 
 while(i < endTime)
 {
   getline(cin, name);
    i++;
    endTime--;
   if( i > endTime && (name.empty()))

     break;
 }

 cout << "NO NAME ENTERED!!" << endl;
4

1 回答 1

0

您的部分问题是 getline() 是一个阻塞调用,并且在有人输入内容之前不会返回。

你可以做的是研究线程——有两个不同的线程,其中一个单独负责观察时间,如果时间已经过去,那么你发送一个信号来杀死另一个线程。

您在此处显示的输入法受到很大限制。

于 2013-03-21T05:07:59.557 回答