可能性の重複:私は整数で01を示すことができた方法
How can I pad an int with leading zeros when using cout << operator?整数値問題
?私は文字列を整数に変換するたび
することは、私は常に1の代わりに、01値を得ることができる方法01.
を取得します。
可能性の重複:私は整数で01を示すことができた方法
How can I pad an int with leading zeros when using cout << operator?整数値問題
?私は文字列を整数に変換するたび
することは、私は常に1の代わりに、01値を得ることができる方法01.
を取得します。
ので、あなたはそれをC++とタグ付けしましたが、C++のストリームでそれを行う方法は次のようになります:
#include <sstream>
#include <iomanip>
#include <iostream>
int main() {
int value = 1;
std::stringstream ss;
ss.width(2);
ss << std::setfill('0') << value;
std::cout << ss.str() << std::endl; // displays '01'
}
次のギ指定ここで
printf("%02d\n",myInt);
を使用し、printfのを使用している場合は、パーセンテージ後の0はゼロパディングを先頭と2を示す整数として2
のフィールド幅を示し、それ常に1になります。 01を表示するには、表示用に文字列に戻す必要があります。
あなたが書くことができフォーマッタを使用して値を表示する場合のprintfに
printf("%02d", x);
を使用することです最善の方法:
%02d
は、C++リファレンスマニュアルを参照してください:http://www.cplusplus.com/reference/clibrary/cstdio/printf/
integer
タイプは、可能な最大整数値の範囲をカバーするために、すべてのメモリ(通常32または64ビット)を使用します。フォーマット/表示情報を追跡することはありません。その結果、32ビットの値でさえ40億の異なる値を追跡することができますが、画面上、ファイル内などに表示する必要があります。周囲のコードによって決定されなければならず、integer
のプロパティではありません。したがって、整数がある場合は、表示するときに書式を選択することができます。これを行うにはさまざまな方法があります。最もC++の方法は、std::ostream
と<iomanip>
ヘッダーを使用しています。これには、フィールドの幅と塗りつぶし/埋め込み文字の指定が含まれています。例については、http://www.cplusplus.com/reference/iostream/manipulators/setw/を参照してください。また、「参照」リンクに従って設定してください。 Cから継承された方法は...第一の二重引用符で囲まれた文字列の部分は、%がパッドに、0手段変換を導入し、2幅である「書式文字列」を、含ま
printf("%02d", n);
...です、dは引数のリストの次の10進数/整数値を意味します。
の値をと混同しないようにしてください。が表示されます。
あなただけ使用することができます。
#include <iostream>
#include <iomanip>
int main() {
int x = 1;
std::cout << std::setfill('0') << std::setw(2) << x << std::endl;
return 0;
}
出力:
01
が01値での取得の使用何次完全なプログラムに示すように
int?これとint演算の違いは何ですか? –