Visual C ++ продолжает прерывать мой цикл. Строка l1 имеет длину 80 символов. По какой-то причине код проходит через одну итерацию основного цикла, а затем появляется окно с сообщением «Ошибка отладки … R6010 -abort () был вызван», что завершает программу.
for(int i=1;i<80;i++)
{
SetConsoleTextAttribute(hConsole, green);
for(int j=0;j<i;j++)
{
cout<<l1.at(j);
}
SetConsoleTextAttribute(hConsole,norm);
for(int k=i;k<80;k++)
{
cout<<l1.at(k);
}
Sleep(100);
system("CLS");
}
Это потому, что вы превышаете границы строки, которую вы передаете. Почему вы жестко закодировали значение 80 в своем коде?
Попробуй это
int len = strlen(l1) ;
for(int i=1;i<len;i++)
{
SetConsoleTextAttribute(hConsole, green);
for(int j=0;j<i;j++)
{
cout<<l1.at(j);
}
SetConsoleTextAttribute(hConsole,norm);
for(int k=i;k<len;k++)
{
cout<<l1.at(k);
}
Sleep(100);
system("CLS");
}