繁体   English   中英

C++ 打字效果

[英]C++ Typewriting Effect

所以我试图在 C++ 中打印打字效果,错误是脚本给了我最终结果而不是打字效果。

#include <iostream>
#include <stdlib.h>
#include <unistd.h>

int main() {
  std::string d1 = "\"Starting in 3, 2, 1...\"";
  for(int i = 0; i < sizeof(d1); i++){
    std::cout << d1[i];
    sleep(1);
  }
}

对于那些其他问题,每个人似乎都错过了这里的重点,即std::cout被缓冲(在大多数系统上)。 所以它在显示文本之前等待换行符。 在每次调用sleep() std::cout.flush() ) 。

首先不要使用sizeof(d1)来返回字符串的字节大小,而是使用d1.size()来返回字符串的长度。 另外,我不知道你从哪里得到sleep()函数。 使用std::this_thread::sleep_for(std::chrono::milliseconds({time_in_milliseconds})); 相反(您将需要#include <thread> )。

工作示例:

#include <iostream>
#include <string>
#include <thread>

int main() {
    std::string d1 = "\"Starting in 3, 2, 1...\"";

    for (int i = 0; i < d1.size(); i++) 
    {
        std::cout << d1[i];
        std::this_thread::sleep_for(std::chrono::milliseconds(500));
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM