[C言語]2進数文字列を10進数の整数値に変換する関数

10進数を2進数文字列に変換する関数は前に作成してますが、逆に「1101」「10110000」などの2進数文字列を10進数の整数値に変換するC言語用の関数がなかったので作成してみました。

#include <stdio.h>
#include <string.h>

int bin2dec(char *src);

int main(void)
{
    char binstr1[] = "1101";     /* 13 */
    char binstr2[] = "10110000";    /* 176 */
    char binstr3[] = "1000000100000000";    /* 33024 */

    int dec = 0;

    dec = bin2dec(binstr1);
    printf("%s:%d(0x%02.2X)\n", binstr1, dec, dec);

    dec = bin2dec(binstr2);
    printf("%s:%d(0x%02.2X)\n", binstr2, dec, dec);

    dec = bin2dec(binstr3);
    printf("%s:%d(0x%02.2X)\n", binstr3, dec, dec);

    return 0;
}

/* 2進数文字列を10進数に変換 */
/* 10000000 -> 128, 1000 -> 8, 1000000000000000 -> 32768 */
int bin2dec(char *src)
{
    int dec = 0;
    for (;;) {
        if (*src == '1') {
            dec |= 1;
        }
        src++;
        if (!*src) {
            break;
        }
        dec <<= 1;
    }
    return dec;
}

実行結果
$ ./bin2dec
1101:13(0x0D)
10110000:176(0xB0)
1000000100000000:33024(0x8100)

[2325] Posted by kagahiro at 2013/07/03 00:10:55
オープン | 0 point | Link (1) | Trackback (0) | Comment (0)

キーワード

C言語 サンプル プログラム コード 2進数 プログラミング 

ジャパンのホームページ


[C言語]2進数文字列を10進数の整数値に変換する関数 関連リンク

[C言語]1バイト(8bit)の10進数を2進数の文字列に変換するコード
1バイト(8bit)の10進数を2進数の文字列に変換するコードのC言語版です。C言語では、PerlやPHPなどのように2進文字列に変換してくれる便利な関数は関数はないので、ビット演...

[C言語]2進数文字列を10進数の整数値に変換する関数 トラックバック

トラックバックURL :


[C言語]2進数文字列を10進数の整数値に変換する関数へのコメント


詳細の入力フィールドを表示する

おすすめ  (チェックしてコメントすると最新情報に掲載)
コメント :

< 前の投稿      次の投稿 >

アクセスランキング

今日のアクセスランキング TOP 10

  1. Google トレンドとGoogle Insights for Searchが統合 (3 PV)
  2. Google AdSense のクリック率を上げるひどいテクニック (2 PV)
  3. SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (2 PV)
  4. はてなダイアリー、ブログモードの正式運用を開始 (2 PV)
  5. RabbitMQ (2 PV)
  6. リネージュII・アイテム売買 (2 PV)
  7. FFR(日米政府の新たな貿易協議)で円高か #FX #ドル円 (2 PV)
  8. jHtmlArea (2 PV)
  9. 海外掲示板を読むために気になったスラング系英単語まとめ | Kousyoublog (2 PV)
  10. [Perl]UTF-8でエンコードされた英数字の全角半角変換を行うコード (2 PV)

今月のアクセスランキング TOP 10

  1. SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (123 PV)
  2. FC2まとめ (47 PV)
  3. 海外掲示板を読むために気になったスラング系英単語まとめ | Kousyoublog (42 PV)
  4. 2NN 2ちゃんねるニュース速報+ナビ (36 PV)
  5. Google Finance(グーグルファイナンス)- リアルタイム株価情報、金融ニュース、日本株 (29 PV)
  6. StartPage(スタートページ) - 匿名検索エンジン (23 PV)
  7. 裁量トレードを半自動化する無料のMT5向け裁量トレード支援ツール(裁量補助EA)「PositionKeeper MT5」 #FX (17 PV)
  8. MT4向け無料ヘッジ(両建て)ツール(EA)「STOPPER FREE」 #自動売買 #FX (16 PV)
  9. ガンマトレード(ガンマプレイ)とは #FX #用語解説 #オプション取引 (14 PV)
  10. Google Maps(グーグルマップ)日本版 - 地図検索、ルート検索 (14 PV)

アクセス統計

ディレクトリ

関連サイト