• ベストアンサー

setw

c++にて下記のプログラムを実行した際に、3文字までの"Hel" が表示されるかと思うのですが、実際には"Hello World"全て の文字が出力されてしまいます。 どこかおかしいのでしょうか? #include<iostream> #include<iomanip> int main(){ std::cout << std::setw(3) << "Hello World" << std::endl; return 0; } 環境は下記の通りです。 g++ : version 3.4.6 linux

質問者が選んだベストアンサー

  • ベストアンサー
  • asuncion
  • ベストアンサー率33% (2127/6289)
回答No.1

setw(3) の指定は、「少なくとも」3桁の場所が必要、 という意味で、「先頭から3桁だけ」出力する、 ということではないはずです。

flex1101
質問者

お礼

ありがとうございます。 webのプログラムサンプルで先頭から3文字だけ表示 するとありました。 文字の切り出しには使えないということですね。

関連するQ&A