前言
hello,大家好,我是文宇。
正文
下面是一个C++版本的打字效果的示例代码:
#include <iostream>
#include <chrono>
#include <thread>
int main() {
std::string text = "Hello, World!";
for (size_t i = 0; i <= text.length(); ++i) {
std::cout << text.substr(0, i) << std::flush; // 输出子字符串并刷新输出流
std::this_thread::sleep_for(std::chrono::milliseconds(100)); // 延时100毫秒
system("cls");
}
std::cout << std::endl;
return 0;
}
这段代码会逐渐输出字符串"Hello, World!"的子字符串,实现了一个打字效果。在每次循环中,使用substr
函数获取从0位置开始到当前位置的子字符串,并通过std::cout
输出,并通过std::flush
刷新输出流。之后,通过std::this_thread::sleep_for
函数暂停100毫秒,以产生延时效果。最后,通过std::endl
输出一个换行符。这样,字符会逐渐显示出来,从而实现了打字效果。