Std:: cout для печати символа N раз

Как я могу напечатать символ N число раз, используя std::cout без цикла?

Есть ли способ переместить текстовый курсор назад, чтобы аннулировать эффект std::cout << std::endl;? то есть перемещаться вверх по строке (скажем, мы никогда ничего не печатали после выполнения операции std::cout << std::endl;).

Ответ 1

 std::cout << std::string(100, '*') << std::endl;

Чтобы переместить строку вверх, вам нужно прибегнуть к выводам терминала (при условии, что isatty() означает, что вы работаете на одном).

Ответ 2

std::cout << std::setfill(the_char) << std::setw(100) << "";

Ответ 3

существует способ вернуть наш способ свести на нет эффект cout < епсИ; то есть двигаться вверх по линии (скажем, мы никогда ничего не печатали после выполнения cout < епсИ; работа) Большое вам спасибо!

Используйте тернарный оператор (или оператор if, если вы обратитесь)... что-то вроде...

void PrintCharNtimes(char chatToPrint; int numTimes)
{
   std::cout << std::string(numTimes, chatToPrint) << (numTimes > 0) ? std::endl : ;
}