格式化固定長度字串,格式化字串裡顯示百分號
一. 在程式設計過程中經常需要格式對齊,這就需要把字串格式成固定長度:
1: C++提供了setiosflags()來設定輸出格式,setw(int)設定輸出寬度:
cout<<setiosflags(ios::left)
<<setw(10)<<"欄位1"
<<setw(10)<<"欄位2"
<<setw(10)<<"欄位3"<<endl;
cout<<setiosflags(ios::left)
<<setw(10)<<"value1"
<<setw(10)<<"value2"
<<setw(10)<<"value3"<<endl;
2.利用格式化也可以實現:
printf("%-10s%-10s%-10s","value1","value2","value3");
說明: %s: 輸出字串
%10s: 輸出固定長度為10的字串 預設右對齊
%-10s: 輸出固定長度10的字串 左對齊;
CString::Format()的格式化方式跟printf一樣.
二. 格式化固定小數位
printf("%.3f%.4f%.5f","value1","value2","value3");
說明: 在位數前面加點,表示需要格式化多少位小數點數;上面範例分別表示取3位,4位,5位小數點值.
三. 格式化字串裡顯百分號
在進行資料處理時很多時候會涉及到百分比數,如: 99.86%;要在格式化字串時把後面的一齊新增上去,"%.2f%"這樣是不行的!格式化的時候都是以%為字首,這樣就會有兩個字首,而後續的引數只有一個,就會造成格式化錯誤!正確的語法應該是: "%.2f%%",兩個百分比字首代表讀取百分號!