「C++/stdio.h」の編集履歴(バックアップ)一覧はこちら
C++/stdio.h - (2008/01/30 (水) 21:42:44) の1つ前との変更点
追加された行は緑色になります。
削除された行は赤色になります。
#contents
*書式
%[フラグ][最小フィールド幅][.精度][長さ修飾子]変換指定子
-フラグ
--&link_aname(f_minus){- (左寄せ)}
--&link_aname(f_plus){+ (常に符号を出力)}
--&link_aname(f_space){空白 (0以上の場合、符号の代わりに空白を出力)}
--&link_aname(f_zero){0 (指定されたフィールド幅になるように0で埋める)}
--&link_aname(f_sharp){# (数値データを特殊な形式で出力)}
**フラグ
-&aname(f_minus,option=nolink){- (左寄せ)}
#div(){
setw と left、setf(ios::left)、setiosflags(ios::left) を組み合わせる。
}
--C
#codehighlight(C){{
#include <stdio.h>
int main() {
int a = 10;
int b = -1;
/* - なしで幅指定 */
printf("a: %5d b: %5d (default)\n", a, b);
/* - ありで幅指定 */
printf("a: %-5d b: %-5d (with -)\n", a, b);
/*
出力結果
a: 10 b: -1 (default)
a: 10 b: -1 (with -)
*/
return 0;
}
}}
--C++
#codehighlight(C){{
#include <iostream>
// setw、setiosflags を使用する場合
#include <iomanip>
int main() {
int a = 10;
int b = -1;
// 幅のみ指定
std::cout << "a: " << std::setw(5) << a << " b: " << std::setw(5) << b << " (only setw)" << std::endl;
// left で左寄せ
std::cout << "a: " << std::left << std::setw(5) << a << " b: " << std::setw(5) << b << " (left)" << std::endl;
// setf で左寄せ
std::cout.setf(std::ios::left);
std::cout << "a: " << std::setw(5) << a << " b: " << std::setw(5) << b << " (setf)" << std::endl;
// setiosflags で左寄せ
std::cout << "a: " << std::setiosflags(std::ios::left) << std::setw(5) << a << " b: " << std::setw(5) << b << " (setiosflags)" << std::endl;
/*
出力結果
a: 10 b: -1 (only setw)
a: 10 b: -1 (left)
a: 10 b: -1 (setf)
a: 10 b: -1 (setiosflags)
*/
return 0;
}
}}
-&aname(f_plus,option=nolink){+ (常に符号を出力)}
--C
#codehighlight(C){{
#include <stdio.h>
int main() {
int a = 10;
int b = -1;
/* + なし */
printf("a: %d b: %d (default)\n", a, b);
/* + あり */
printf("a: %+d b: %+d (with +)\n", a, b);
/*
出力結果
a: 10 b: -1 (without +)
a: +10 b: -1 (with +)
*/
return 0;
}
}}
--C++
#div(){
setf(ios::showpos) または setiosflags(ios::showpos) を使用する。
}
#codehighlight(C++){{
#include <iostream>
// setiosflags を使用する場合
#include <iomanip>
int main() {
int a = 10;
int b = -1;
// 指定なし
std::cout << "a: " << a << " b: " << b << " (default)" << std::endl;
// setf で指定
std::cout.setf(std::ios::showpos);
std::cout << "a: " << a << " b: " << b << " (setf)" << std::endl;
// setiosflags で指定
std::cout << std::setiosflags(std::ios::showpos) << "a: " << a << " b: " << b << " (setiosflags)" << std::endl;
/*
出力結果
a: 10 b: -1 (default)
a: +10 b: -1 (setf)
a: +10 b: -1 (setiosflags)
*/
return 0;
}
}}
-&aname(f_space,option=nolink){空白 (0以上の場合、符号の代わりに空白を出力)}
--C
#codehighlight(C){{
#include <stdio.h>
int main() {
int a = 10;
int b = -1;
/* 指定なし */
printf("a: %d b: %d (default)\n", a, b);
/* 空白あり */
printf("a: % d b: % d (with space)\n", a, b);
/*
出力結果
a: 10 b: -1 (default)
a: 10 b: -1 (with space)
*/
return 0;
}
}}
--C++
#div(){
?
}
-&aname(f_zero,option=nolink){0 (指定されたフィールド幅になるように0で埋める)}
--C
#codehighlight(C){{
#include <stdio.h>
int main() {
int a = 10;
int b = -1;
/* 指定なし */
printf("a: %d b: %d (default)\n", a, b);
/* 0 あり */
printf("a: %05d b: %05d (with 0)\n", a, b);
/*
出力結果
a: 10 b: -1 (default)
a: 00010 b: -0001 (with 0)
*/
return 0;
}
}}
--C++
#div(){
internal、setf(ios::internal)、setiosflags(ios::internal) と setfill('0') を組み合わせる。
}
#codehighlight(C++){{
#include <iostream>
#include <iomanip>
int main() {
int a = 10;
int b = -1;
// 指定なし
std::cout << "a: " << a << " b: " << b << " (default)" << std::endl;
// internal と setfill で指定
std::cout << std::internal << std::setfill('0') << "a: " << std::setw(5) << a << " b: " << std::setw(5) << b << " (internal)" << std::endl;
// setf と setfill で指定
std::cout.setf(std::ios::internal);
std::cout << std::setfill('0') << "a: " << std::setw(5) << a << " b: " << std::setw(5) << b << " (setf)" << std::endl;
// setiosflags と setfill で指定
std::cout << "a: " << std::setiosflags(std::ios::internal) << std::setw(5) << a
<< " b: " << std::setw(5) << b << " (setiosflags)" << std::endl;
/*
出力結果
a: 10 b: -1 (default)
a: +10 b: -1 (setf)
a: +10 b: -1 (setiosflags)
*/
return 0;
}
}}
-&aname(f_sharp,option=nolink){# (数値データを特殊な形式で出力)}
--C
#codehighlight(C){{
#include <stdio.h>
int main() {
int a = 1234;
printf("8進数: %o -> %#o\n"
"16進数: %x -> %#x\n",
a, a, a, a);
/*
出力結果
8進数: 2322 -> 02322
16進数: 4d2 -> 0x4d2
*/
return 0;
}
}}
*printf
-C
#codehighlight(C++){{
#include <stdio.h>
int main() {
char *p = "Hello World";
printf("%s\n", p);
return 0;
}
}}
-C++
#codehighlight(C++){{
#include <iostream>
int main() {
char *p = "Hello World";
std::cout << p << std::endl;
return 0;
}
}}
#contents
#include(トップページ)
*書式
%[フラグ][最小フィールド幅][.精度][長さ修飾子]変換指定子
-フラグ
--&link_aname(f_minus){- (左寄せ)}
--&link_aname(f_plus){+ (常に符号を出力)}
--&link_aname(f_space){空白 (0以上の場合、符号の代わりに空白を出力)}
--&link_aname(f_zero){0 (指定されたフィールド幅になるように0で埋める)}
--&link_aname(f_sharp){# (数値データを特殊な形式で出力)}
**フラグ
-&aname(f_minus,option=nolink){- (左寄せ)}
#div(){
setw と left、setf(ios::left)、setiosflags(ios::left) を組み合わせる。
}
--C
#codehighlight(C){{
#include <stdio.h>
int main() {
int a = 10;
int b = -1;
/* - なしで幅指定 */
printf("a: %5d b: %5d (default)\n", a, b);
/* - ありで幅指定 */
printf("a: %-5d b: %-5d (with -)\n", a, b);
/*
出力結果
a: 10 b: -1 (default)
a: 10 b: -1 (with -)
*/
return 0;
}
}}
--C++
#codehighlight(C){{
#include <iostream>
// setw、setiosflags を使用する場合
#include <iomanip>
int main() {
int a = 10;
int b = -1;
// 幅のみ指定
std::cout << "a: " << std::setw(5) << a << " b: " << std::setw(5) << b << " (only setw)" << std::endl;
// left で左寄せ
std::cout << "a: " << std::left << std::setw(5) << a << " b: " << std::setw(5) << b << " (left)" << std::endl;
// setf で左寄せ
std::cout.setf(std::ios::left);
std::cout << "a: " << std::setw(5) << a << " b: " << std::setw(5) << b << " (setf)" << std::endl;
// setiosflags で左寄せ
std::cout << "a: " << std::setiosflags(std::ios::left) << std::setw(5) << a << " b: " << std::setw(5) << b << " (setiosflags)" << std::endl;
/*
出力結果
a: 10 b: -1 (only setw)
a: 10 b: -1 (left)
a: 10 b: -1 (setf)
a: 10 b: -1 (setiosflags)
*/
return 0;
}
}}
-&aname(f_plus,option=nolink){+ (常に符号を出力)}
--C
#codehighlight(C){{
#include <stdio.h>
int main() {
int a = 10;
int b = -1;
/* + なし */
printf("a: %d b: %d (default)\n", a, b);
/* + あり */
printf("a: %+d b: %+d (with +)\n", a, b);
/*
出力結果
a: 10 b: -1 (without +)
a: +10 b: -1 (with +)
*/
return 0;
}
}}
--C++
#div(){
setf(ios::showpos) または setiosflags(ios::showpos) を使用する。
}
#codehighlight(C++){{
#include <iostream>
// setiosflags を使用する場合
#include <iomanip>
int main() {
int a = 10;
int b = -1;
// 指定なし
std::cout << "a: " << a << " b: " << b << " (default)" << std::endl;
// setf で指定
std::cout.setf(std::ios::showpos);
std::cout << "a: " << a << " b: " << b << " (setf)" << std::endl;
// setiosflags で指定
std::cout << std::setiosflags(std::ios::showpos) << "a: " << a << " b: " << b << " (setiosflags)" << std::endl;
/*
出力結果
a: 10 b: -1 (default)
a: +10 b: -1 (setf)
a: +10 b: -1 (setiosflags)
*/
return 0;
}
}}
-&aname(f_space,option=nolink){空白 (0以上の場合、符号の代わりに空白を出力)}
--C
#codehighlight(C){{
#include <stdio.h>
int main() {
int a = 10;
int b = -1;
/* 指定なし */
printf("a: %d b: %d (default)\n", a, b);
/* 空白あり */
printf("a: % d b: % d (with space)\n", a, b);
/*
出力結果
a: 10 b: -1 (default)
a: 10 b: -1 (with space)
*/
return 0;
}
}}
--C++
#div(){
?
}
-&aname(f_zero,option=nolink){0 (指定されたフィールド幅になるように0で埋める)}
--C
#codehighlight(C){{
#include <stdio.h>
int main() {
int a = 10;
int b = -1;
/* 指定なし */
printf("a: %d b: %d (default)\n", a, b);
/* 0 あり */
printf("a: %05d b: %05d (with 0)\n", a, b);
/*
出力結果
a: 10 b: -1 (default)
a: 00010 b: -0001 (with 0)
*/
return 0;
}
}}
--C++
#div(){
internal、setf(ios::internal)、setiosflags(ios::internal) と setfill('0') を組み合わせる。
}
#codehighlight(C++){{
#include <iostream>
#include <iomanip>
int main() {
int a = 10;
int b = -1;
// 指定なし
std::cout << "a: " << a << " b: " << b << " (default)" << std::endl;
// internal と setfill で指定
std::cout << std::internal << std::setfill('0') << "a: " << std::setw(5) << a << " b: " << std::setw(5) << b << " (internal)" << std::endl;
// setf と setfill で指定
std::cout.setf(std::ios::internal);
std::cout << std::setfill('0') << "a: " << std::setw(5) << a << " b: " << std::setw(5) << b << " (setf)" << std::endl;
// setiosflags と setfill で指定
std::cout << "a: " << std::setiosflags(std::ios::internal) << std::setw(5) << a
<< " b: " << std::setw(5) << b << " (setiosflags)" << std::endl;
/*
出力結果
a: 10 b: -1 (default)
a: +10 b: -1 (setf)
a: +10 b: -1 (setiosflags)
*/
return 0;
}
}}
-&aname(f_sharp,option=nolink){# (数値データを特殊な形式で出力)}
--C
#codehighlight(C){{
#include <stdio.h>
int main() {
int a = 1234;
printf("8進数: %o -> %#o\n"
"16進数: %x -> %#x\n",
a, a, a, a);
/*
出力結果
8進数: 2322 -> 02322
16進数: 4d2 -> 0x4d2
*/
return 0;
}
}}
*printf
-C
#codehighlight(C++){{
#include <stdio.h>
int main() {
char *p = "Hello World";
printf("%s\n", p);
return 0;
}
}}
-C++
#codehighlight(C++){{
#include <iostream>
int main() {
char *p = "Hello World";
std::cout << p << std::endl;
return 0;
}
}}
表示オプション
横に並べて表示:
変化行の前後のみ表示: