qq_38423382 2017-06-01 08:42 采纳率: 0%
浏览 1901
已采纳

c++程序在输入倒计时的时间内,输入数据的问题。

我在用visual studio编写一个c++控制台应用程序。程序当中的一段是我想让在十秒钟之内输入一个值,如果超过十秒钟用户没有输入就按照默认值运行。
我不知道怎么写,给我一个样本或者一个思路也行。

  • 写回答

3条回答 默认 最新

  • 战在春秋 2017-06-01 09:35
    关注

    代码如下:

    #include <iostream>
    #include <thread>
    #include <chrono>
    
    int getVal(int defaultValue)
    {
        int val = 0;
        std::thread t1([&]() {
            std::cin >> val;
            if (val != 0)
            {
                printf("get value:%d\n", val);
                exit(0);
            }
        });
    
        std::this_thread::sleep_for(std::chrono::seconds(5));
        t1.detach();
    
    
        if (val == 0)
            val = defaultValue;
        return val;
    }
    
    int main()
    {
        std::cout << "请在限定时间内输入,否则将使用默认值123\n";
    
        std::cout << "限定时间没有输入,采用默认值:" << getVal(123) <<std::endl;
    }
    

    具体使用你可以根据自己的情况摘取关键代码。
    提示:测试时不用10秒,少一点时间能加快测试速度。

    用心回答每个问题,如果有帮助,请采纳答案好吗,谢谢~~~

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料