
No.2ベストアンサー
- 回答日時:
★2進整数を表示する関数を自作すればよい。
・作り方は簡単で、最上位ビットから順に『0』と『1』を調べていき、ビットが
立っていれば『putchar('1');』にして、ビットが OFF なら『putchar('0');』
にすれば良いでしょう。
・下にサンプルを載せますので使いやすいように改良して下さい。
サンプル:
unsigned int bit = (1 << (sizeof(int) * 8 - 1));
int value = 12345; ←これが表示したい int 型の整数値です。
printf( "value の 2進表記は " );
for ( ; bit != 0 ; bit >>= 1 ){
if ( value & bit ){
putchar('1');
}
else{
putchar('0');
}
}
printf( " です。\n" );
最後に:
・1バイトが 8 ビットの環境が前提です。→まぁ、普通は 8 ビットですが…。
・上記のサンプルを関数などにすれば使いやすくなります。→print_bin()など
・以上。おわり。
No.4
- 回答日時:
#3の方、「標準」って何を指しておっしゃいますか?
たまたまVCとかにあるようなものは「標準」とは普通いわないでしょう。
で、質問者様へ:
よくある質問で、C FAQ (日本語訳は http://www.kouno.jp/home/c_faq/ にあります)
にも
20.11:
2進数の定数(0b101010のように)を使うことはできるか。2進数用の printf()の書式は存在するか。
A:
2進数の定数は存在しないし、2進数用の書式も存在しない。底2の(2進数)文字列に
よる表現をstrtol()を使って整数に変換することは可能である。
ということですので、#3の方のいうitoaがあればそれを使って変換すれば
いいでしょうし、
なければ#2の方の例を参考に自作ということになります。
No.3
- 回答日時:
自作しなくても、標準であるもの使いましょうよ。
自分で作ればバグも作りこむことになります(汗)
例えば itoaを使えば、
#define BUFF_SIZE 100
char buf[BUFF_SIZE];
int a = 20;
itoa(a, buf, 2);
printf("a=%d を2進数に直すと %s です。\n", a, buf );
これでいけるんじゃないでしょうか。
注意事項としては、itoa は Visual C++ では使えますが、gcc では使えなかったような気がします。
itoa が使えないコンパイラの場合は、(しかたがないので)自作してください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コマンドプロンプトがすぐ消える
-
勝率をプログラムに
-
unsigned int型について
-
テキストカーソル位置の取得
-
(C言語)めちゃくちゃな値にな...
-
C言語です このプログラミング...
-
文字を動かしたい
-
printfの有無で値が変化する
-
switch分のケースを範囲数?に...
-
配列データをExcelファイルとし...
-
入力したお金の金額からお札の...
-
printfの時間差利用
-
じゃんけんゲームの応用
-
万年カレンダーのC言語プログラ...
-
C言語での、年複利の計算方法...
-
C言語で多項式の割り算のプログ...
-
困ってます!Cプログラミングに...
-
c言語でAからZまでを表示する...
-
C言語初心者です。次の問題で質...
-
カレンダーのプログラムについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
10個出力で改行したいのですが...
-
c言語でAからZまでを表示する...
-
(C言語)めちゃくちゃな値にな...
-
コマンドラインに出力した文字...
-
コンパイルエラーについて
-
コマンドプロンプトがすぐ消える
-
勝率をプログラムに
-
テキストカーソル位置の取得
-
三角形の判別
-
【C言語教えてください】sin波...
-
4の倍数を論理演算で表す。。
-
C言語で、「自然数nを入力し、n...
-
入力したお金の金額からお札の...
-
cshの文字列操作(0埋め)
-
switch分のケースを範囲数?に...
-
scanfに文字が入力されたときに...
-
unsigned int型について
-
プログラミングについての質問です
-
ダブルポインタで2次元配列を作成
-
円の面積を求めるプログラミン...
おすすめ情報