ラベル まとめ の投稿を表示しています。 すべての投稿を表示
ラベル まとめ の投稿を表示しています。 すべての投稿を表示

2012年5月19日土曜日

【C++】printfのフォーマットまとめ


指定子対応する型説明使用例
%cchar1文字を出力する"%c"
%schar *文字列を出力する"%8s", "%-10s"
%dint, short整数を10進で出力する"%-2d","%03d"
%uunsigned int, unsigned short符号なし整数を10進で出力する"%2u","%02u"
%oint, short,
unsigned int, unsigned short
整数を8進で出力する"%06o","%03o"
%xint, short,
unsigned int, unsigned short
整数を16進で出力する"%04x"
%ffloat実数を出力する"%5.2f"
%efloat実数を指数表示で出力する"%5.3e"
%gfloat実数を最適な形式で出力する"%g"
%ldlong倍精度整数を10進で出力する"%-10ld"
%luunsigned long符号なし倍精度整数を10進で出力する"%10lu"
%lolong, unsigned long倍精度整数を8進で出力する"%12lo"
%lxlong, unsigned long倍精度整数を16進で出力する"%08lx"
%lfdouble倍精度実数を出力する"%8.3lf"


前回と同じく、サイトを参考(コピペ)にしました
http://www.k-cube.co.jp/wakaba/server/format.html

これだけではわからないところがあるので追記

%sのchar * とは charの配列という意味です

使用例にある数字は
%sなら何文字表示するか(-なら最後から)
その他は、.(ドット)の前にあるのが一の位以上の数字をどれだけ表示するか
.(ドット)の後にあるのが小数点以下の数字をどれだけ表示するか
です

例えば
 double a = 68920.5555555;
 printf ("%4.2lf",a);
を実行すると
8920.56
という結果が表示されます
(あくまで表示されるだけで変数の値は変わってない)
(四捨五入されるので6に繰り上がります)

【C++】データ型まとめ

データ型 サイズ 意味 範囲
bool 1Byte 論理型 true(0以外) / false(0)
char 1Byte 文字型 -128 ~ 127
unsigned char 1Byte 符号なし文字型 0 ~ 255
wchar_t 2Byte ワイド文字型   -
short (int) 2Byte 短長整数型 -32768 ~ 32767
unsigned short (int) 2Byte 符号なし短長整数型 0 ~ 65535
int 4Byte 整数型 -2147486948 ~ 2147483647
unsigned (int) 4Byte 符号なし整数型 0 ~ 4294967295
long (int) 4Byte 長整数型 -2147486948 ~ 2147483647
unsigned long (int) 4Byte 符号なし長整数型 0 ~ 4294967295
float 4Byte 単精度浮動小数点型 -3.4E+38 ~ 3.4E+38
double 8Byte 倍精度実数 -1.7E+308 ~ 1.7E+308
long double 8Byte 拡張精度浮動小数点型 -1.7E+308 ~ 1.7E+308 
__int8 1Byte  拡張整数型 -128 ~ 127
__int16 2Byte  拡張整数型  -32768 ~ 32767
__int32 4Byte 拡張整数型 -2147483648 ~ 2147483647
__int64 8Byte 拡張整数型 -9223372036854775808 ~ 9223372036854775807
void 0Byte 空のデータ型   -

char型は1バイトしか入らないので半角一文字しか入らない
なので、文を入力する時は普通
 char name[255];
 printf("%s\n",name);
のように、1配列に半角一文字が入るようにする

intとlongの違いって何なんだろう ググったけど分かりませんでした
エロい人、コメントで教えてください

bool型って1バイトも使ってるんだね
1ビットにできないのかな

http://www37.atwiki.jp/visualstudio/pages/38.html
ここのサイトを参考(コピペ)にしました