web-dev-qa-db-ja.com

文字をN回印刷するstd :: cout

ループせずにstd::coutを使用して文字をN回印刷するにはどうすればよいですか?

std::cout << std::endl;の効果を無効にするためにテキストカーソルを戻す方法はありますか?つまり、1行上に移動します(たとえば、std::cout << std::endl;操作を行った後は何も印刷しませんでした)。

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

行を上に移動するには、ターミナルエスケープを使用する必要があります(isatty()が1つを実行していることを示していると仮定します)。

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

cout << endlの効果を無効にする方法をバックアップする方法はありますか。つまり、1行上に移動します(cout << endl;操作を実行した後、何も印刷しなかったとします)ありがとうございます!

三項演算子 (または参照する場合はifステートメント)を使用します...

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