[C言語]1バイト(8bit)の10進数を2進数の文字列に変換するコード
1バイト(8bit)の10進数を2進数の文字列に変換するコードのC言語版です。
C言語では、PerlやPHPなどのように2進文字列に変換してくれる便利な関数は関数はないので、ビット演算子を使ってビットのオン・オフを判定して、2進文字列を作成していくしかありません。
#include <stdio.h>
#include <string.h>
void dec2bin(char src, char *dest);
const int buf_size = 9;
int main(void)
{
char buf[buf_size]; /* 変換後の2進文字列を受け取るための領域 */
/* char str1[] = "abcdefg"; */
char str1[] = "あいうえお";
char *cp;
int num = 1;
for (cp = str1; *cp; cp++) { /* 文字数分処理 */
memset(buf, '\0', sizeof(buf));
dec2bin(*cp, buf);
printf("%d:%s (0x%02.2X)\n", num, buf, 0x000000ff & *cp);
num++;
}
return 0;
}
/* 1Byte(8bit)の10進数を2進数の文字列に変換 */
void dec2bin(char src, char *dest)
{
const int bit_size = 8;
int i;
for (i = 0; i < bit_size; i++) {
dest[i] = (0x80 & src) ? '1' : '0';
src <<= 1;
}
}
解きながら学ぶC言語
ソフトバンククリエイティブ 著者:柴田 望洋,肘井 真一,高木 宏典,赤尾 浩
amazon.co.jpのカスタマーレビューを見る
powered by amalink
オープン | 0 point | Link (6) | Trackback (0) | Comment (0)
キーワード
C言語 サンプル プログラム コード 2進数 プログラミング
[C言語]1バイト(8bit)の10進数を2進数の文字列に変換するコード 関連リンク
| [gcc]iconvで文字エンコードを変換するサンプルプログラム | |
| 単にテキストファイル等の文字エンコードを変換するのであれば、iconvコマンドを使用して変換すれば良いのですが、プログラム内部で取得した文字列の文字エンコードを変換したい場合もあります。以下のプログラムはL... | |
| [PHP]10進数を2進文字列に変換するコード | |
| PHPの場合は、ズバリ10進数を2進文字列に変換できるdecbin関数があるので、decbin関数を使用すればいいのですが、もちろん、Perlの場合と同様にビット演算で2進文字列に変換することもできます。以下は、そのサンプル... |
|
| [Perl]1バイト(8bit)の10進数を2進数の文字列に変換するコード | |
| Perlの関数を使用して、以下の手順で10進数を2進文字列に変換することができます。sprintf関数で10進数を16進文字列に変換pack関数で16進文字列をバイナリーにパックunpack関数で2進文字列に変換例えば、文字列の先頭... |
|
| [C言語]UTF-8でエンコードされた文字列の文字数を取得するコード | |
| C言語のstrlen関数では文字列の長さとして返ってくる値はバイト単位となるので、UTF-8でエンコードされている場合、漢字、ひらがな、カタカナなどは1文字で3となってしまいます。Webアプリケーションのテキスト処理で... | |
| [C言語]UTF-8でエンコードされた文字列の部分文字列を取り出すコード | |
| C言語のstrncpy関数やmemcpy関数ではバイト単位の操作になるので、漢字、ひらがな、カタカナなどの全角文字を文字数で指定して部分文字列を取り出すことができません。そこで半角英数も全角文字も1文字として部分文字... |
|
| [C言語]2進数文字列を10進数の整数値に変換する関数 | |
| 10進数を2進数文字列に変換する関数は前に作成してますが、逆に「1101」「10110000」などの2進数文字列を10進数の整数値に変換するC言語用の関数がなかったので作成してみました。#include <stdio.h>#inc... | |
[C言語]1バイト(8bit)の10進数を2進数の文字列に変換するコード トラックバック
トラックバックURL :
[C言語]1バイト(8bit)の10進数を2進数の文字列に変換するコードへのコメント
アクセスランキング
今日のアクセスランキング TOP 10
- 2%のインフレターゲットとは (3 PV)
- 検索エンジン (2 PV)
- SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (2 PV)
- [FX]裁量ポジションを簡単に管理できるMT4向け無料の裁量補助EA「PositionKeeper」 (2 PV)
- [PR]noteで販売している自作EAの一覧 (2 PV)
- SQLiteのSELECT文で上位 (TOP) n件のデータを取得する (2 PV)
- 自作のMT4向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)とゴゴジャン出品中の有料EAの一覧 #MT4 (2 PV)
- OSSオープン・ラボ (2 PV)
- グーグルリーダーが今年7月でサービス終了とか言われても困るよね (2 PV)
- MT4向け1ポジアノマリーEA「DAY TRADING」 オープンソースライセンス(GPL3) #ドル円 (2 PV)
今月のアクセスランキング TOP 10
- SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (20 PV)
- QAhub (18 PV)
- Google Maps(グーグルマップ)日本版 - 地図検索、ルート検索 (10 PV)
- SQLiteのSELECT文で上位 (TOP) n件のデータを取得する (9 PV)
- [将棋]将棋メイド「押木ゆい」さん考案の新戦法「メイドシステム」が大人気 #将棋ウォーズ初段 (8 PV)
- 仲値トレードが簡単にできる無料EA「NAKANE3」 #MT4 (8 PV)
- MT4向け無料ヘッジ(両建て)ツール(EA)「STOPPER FREE」 #自動売買 #FX (8 PV)
- [ch225] 「世界の株価リアルタイムチャート」 (8 PV)
- 伝えることの難しさ マスコミの情報はなぜ質が低いか (7 PV)
- 自作のMT4向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)とゴゴジャン出品中の有料EAの一覧 #MT4 (7 PV)
アクセス統計
ディレクトリ
関連サイト
