gpt4 book ai didi

c++ - 我如何将字符串中的每个字符更改为不同的颜色而不是整个字符串

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:54:39 25 4
gpt4 key购买 nike

#include "stdafx.h"
#include <iostream>
#include <string>
#include <windows.h>
#include <time.h>

unsigned long n = 1;

int main()
{
int i = 0;
std::string text = "I whip my hair back and forth";
std::string wipIt = " ";
size_t sz;
sz = wipIt.size();
srand(time(0));

do{
for(i = 0; i < 10; i++)
{
int randomNumber = rand() % 15 + 1;
Sleep(50);
wipIt.resize (sz++,' ');
std::cout << wipIt;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), randomNumber);
std::cout << text << "\n";
}
for(i = 10; i > 0; i--)
{
int randomNumber = rand() % 15 + 1;
Sleep(50);
wipIt.resize (sz--,' ');
std::cout << wipIt;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), randomNumber);
std::cout << text << "\n";
}
}
while (n != 0);
return 0;
}

如果我搞砸了这篇文章,我很抱歉这只是我的第二篇文章。

要使字符串中的每个字符都具有不同的颜色,而不是使整个字符串都具有相同的颜色,最简单的方法是什么。

整理提示也将不胜感激:P

编辑:稍微整理一下,随机效果很好,谢谢大家^_^ 现在按字符颜色?

最佳答案

为什么看起来不是随机的?好吧,因为它不是。计算机使用伪随机数生成器生成看似随机的数字,这些数字实际上是众所周知的和确定的。

伪随机生成器的初始状态称为“种子”;您必须每次都将其设置为不同的值以产生更接近随机的结果。在 C 中,您可以这样做:

srand(time(NULL));

这会将种子设置为每次调用时的实际时间(以秒为单位)。

关于c++ - 我如何将字符串中的每个字符更改为不同的颜色而不是整个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11762547/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com