格式化固定長度字符串,格式化字符串里顯示百分號
一. 在編程過程中經常需要格式對齊,這就需要把字符串格式成固定長度:
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%%",兩個百分比前綴代表讀取百分號!