簡體   English   中英

如何使用cout格式化輸出

[英]How to format output using cout

我知道有可能使用其他一些方法(例如printf())來執行此操作,但是我想知道是否可以使用cout完成此操作。

Insert -8:   -8 90 34 -78 34 235 9 -12 653
Insert -78:  -78 -8 34 90 34 235 9 -12 653

這是排序算法的部分輸出。 它顯示了每次通過之后發生的情況。 每個數字都來自相同的向量。 如何使負號始終與第一個元素對齊(如上所示)(后面的元素無關緊要)?

目前,我的代碼如下所示:

cout << "Insert " << my_vector[pos] << ": ";

for (int k = 0; k < size_of_vector; k++) {
  cout << my_vector[k] << " ";
}

cout << endl;

但是,我的代碼導致輸出如下所示:

Insert -8: -8 90 34 -78 34 235 9 -12 653 
Insert -78: -78 -8 34 90 34 235 9 -12 653 

一種簡單的方法是在指定的字段寬度中將導入作為單個字符串輸出,例如

cout
    << "Insert "
    << setw( 14 ) << to_string( my_vector[pos] ) + ":";

需要選擇幻數以容納最大位數和符號。

免責聲明:編譯器未觸及的代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM