フォーマットについてのまとめ.忘れやすいので作成した.(随時更新します)
基本的なこと
変換文字 ※赤字は使う頻度が(個人的に)多いもの
数値フィールドタイプ | 変換指定子 | 詳細 |
整数、符号付 | %d | 基数10 |
%i | 基数10(デフォルト)or 16(最初の数字が0x or 0X)or 8(最初の数字が0) | |
%ld or %li | 64ビットの値 | |
整数、符号なし | %u | 基数10 |
%o | 基数8 | |
%x | 基数16 | |
%lu or %lo or %lx | 64ビットの値、基数10 or 8 or 16 | |
浮動小数点数 | %f | 浮動小数点フィールドには、次のどれでもOK。Inf、-Inf、NaN、-NaN |
%e | ||
%g | ||
文字または文字列 | %c | 単一の文字 |
%s | 文字ベクトル or string配列 |
フラグ
‘-‘ | 左揃えする |
‘+’ | 常に数値の符号を出力 or テキストを右揃えする |
‘ ‘ | 値の前にスペースを一つ追加する |
‘0’ | 値の前にゼロを入れてフィールド幅をパディングする |
‘#’ | 選択した数値変換を次のように変更
|
よくある例
- フィールド幅のパディング(例:forループなどでiが1から100まで増えるとき,1や20を001や020みたいに表したい)
‘%03d’を使う
for i = 1:1:100
fmt = '%03d'; % --- format(0はパディング,3は桁数,dは符号付整数を表す)
str = num2str(i,fmt); % -- 整数を文字列に変換
disp(str) % --- 画面に出力
end