「Hagi utils」の版間の差分
提供: Wikinote
細 (→printb() 関数) |
|||
| 行23: | 行23: | ||
} | } | ||
} | } | ||
| − | + | 使用例:<code>argv[1]</code> を <code>atoi()</code> に渡して <code>printb()</code> にかけるコマンド | |
[hagio@lab ~]$ printb 1234567890 | [hagio@lab ~]$ printb 1234567890 | ||
01001001100101100000001011010010 | 01001001100101100000001011010010 | ||
[hagio@lab ~]$ printb -1 | [hagio@lab ~]$ printb -1 | ||
11111111111111111111111111111111 | 11111111111111111111111111111111 | ||
2009年5月4日 (月) 19:02時点における版
【秘密】(笑)
ちょっとしたコマンドやライブラリを自宅と会社で同期するためのページ。 学生時代に作ってたヤツは今じゃ全然使い物にならない…。
C 言語
printb() 関数
整数を 2 進数で表示する関数。
#include <stdio.h>
void printb(unsigned num) {
int i;
for (i = 31; i >= 0; i--) {
putchar(((num >> i) & 1) + '0');
}
}
void printb64(unsigned long long num) {
int i;
for (i = 63; i >= 0; i--) {
putchar(((num >> i) & 1) + '0');
}
}
使用例:argv[1] を atoi() に渡して printb() にかけるコマンド
[hagio@lab ~]$ printb 1234567890 01001001100101100000001011010010 [hagio@lab ~]$ printb -1 11111111111111111111111111111111