0

次のように使用する os という ostream があります。

os << rec.lastname << " " << rec.firstname << setw(30) << rec.phonenum;

そして、出力は次のように表示されます。

WITT CANDACE                  250-939-5404
PERKINS THEODORE                  723-668-3397
HULL THAD                  708-807-6757
SALAZAR STEPHAN                  415-413-5058
WILKINS ISRAEL                  938-701-1455
PERRY BRUCE                  540-916-2956
RIVERS VALENTIN                  726-204-2377
JOHNSTON WILFRED                  582-126-8861
SPENCE LEVI                  985-365-7415
NGUYEN KAYLA                  484-322-1527

これは以前に何度も尋ねられたことを知っていますが、答えは常に setw() を使用することであり、私の場合は機能しません。理由はありますか?

4

2 に答える 2

4

setw出力ストリームにスペースの数を追加します。列を並べたい場合は、前の文字列のサイズを差し引く必要があります。

os << rec.lastname << " " << rec.firstname << setw(30 - rec.lastname.size() - rec.firstname.size()) << rec.phonenum;
于 2014-02-10T01:18:44.037 に答える