• 締切済み

16進数関数のhex関数について

16進数を扱う、「hex」という関数があったようななかったような・・・。 16進数の文字列を、例えば、「"0a"」という文字列が あって、この"0a"の前に"0x"という文字列を付け足して"0x0a"とし、この"0x0a"を10という整数値に変換したいのですが、どのようなソースファイルになりますか。 初心者なので、どうプログラムを組んで良いのか分かりませんでしたので、教えて下さい。

  • burbe
  • お礼率35% (78/221)

みんなの回答

  • inetd
  • ベストアンサー率23% (43/184)
回答No.3

strtol() を使ったら良いと思います。"0x" はあってもなくても出来ます。 例) char s[] = "0a"; long n; n = strtol(s, NULL, 16);

  • K-1
  • ベストアンサー率21% (832/3844)
回答No.2

言語がわからないのですが、0xからCと判断して。 int a; char *ten = "0a"; a = hex(ten); aに10が入ります。 もし「0x0a」という文字列が欲しいなら、 char *ten = "0a"; char work[5]; sprintf(&work[0], "0x%s", ten); workに"0x0a"と入ります。

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

int x; char buff[]="0a"; sscanf(buff,"%X",&x); というような形で変換できます。 この場合、"0x"は、付けても付けなくてもいいです。

関連するQ&A

  • Hex関数

    こんにちは VBでちょっとしたことなんですが、自前の関数を作成するかどうかで悩んでいます。 nバイトの配列データ(dim xx() as Byte と宣言されている)を1バイトあたり2桁で表示したいのですが、Hex関数(あるいはHex$関数)では、0x00 の場合や0~9の場合、"0"や1桁になってしまうんですね。 もし組み込み関数で1バイトを2桁16進数表示できる変換関数があれば、自前のものより高速だし楽だと思い、迷ってます。 「そんなものはないので自分で作れ」とか「こんなのあるよ」とか教えてください。お願いします。

  • DOUBLE型の16進HEX文字列変換について

    12バイトのHEX文字列(FFFFFFFFFFFFFFFFFFFFFFFF)などを をいったん、10進に変換し、DOUBLE型の変数に設定し、 数値演算を行い 再度HEX文字列(FFFFFFFFFFFFFFFFFFFFFFFF)に変換を行いたいのですが、 変換の方法がわからず困っています。 HEX関数はLONGでしかおこなえないようで・・ すみませんが、ご教授いただけると助かります。 宜しくお願いいたします。

  • 文字列から整数導き出したい

    お世話になります。 現在、簡易的な占いのプログラムを作ってみています。 フォームに入力された文字から占いの結果を表示するようなものを 作りたいのですが、中々うまくいきません。 仕組み的にはフォームから文字列をPOST⇒10進数の整数に変換⇒10進数の整数に対応する占い結果を表示という形を考えています。 文字列をbin2hex関数で16進数にはできるのですが、16進数から10進数変換する方法がわかりません。 何かより方法がありましたらご教授ください。

    • ベストアンサー
    • PHP
  • MATLAB 進数変換

    MATLABで、0.1260 -1.0190 1.0838 のような10進数を16進数に変換するにはどうすればよいのでしょうか?dec2hex()という関数を利用するのですが整数でないと使えないので整数に直すのでしょうか?

  • 10進数→2進数

    hex関数のように10進数から2進数に変換する関数はないでしょうか? もしあれば教えてください。

    • ベストアンサー
    • Perl
  • 指定文字から、空白までを16進数→10進数に変換する関数

    エクセルで、A1セルに下記が記載されています。 「タイトルテスト#7BC ☆☆☆」 この文字列で、7BCだけを抽出し、さらに10進数に変換してB1へ出力したいと考えています。 16進数の前には必ず#がついており、最後には空白があります。 ♯から空白までの文字を10進数に変換する関数を調べたのですが、私には分かりませんでした。 どなたかご教授お願いいたします。

  • 16進数の文字列

    16進数の文字列をそれと同値な整数値へ変換する関数をかけという問題なのですが、 この場合文字列を読み込んで、例えば読み込んだ値がABだとした場合、 A*16の1乗+B*16の0乗 を計算する関数を作ればよいのだと思うんですが、 それぞれの値をべき乗する関数も必要になってくると考えています。 そこで問題なのですが、べき乗の関数を作ったとして、それぞれの値(こんかいはAとB)にそれぞれのべき乗した値をかけてやるには、どういった方法があるのでしょうか? 回答よろしくお願いします。

  • 2進数と16進数の相互変換

    VBScriptで 2進数と16進数の相互変換をしたいのですが、 進数を変換する関数としては、 Hex関数やOct関数ぐらいしか見当たりません。 どうしたらいいのでしょうか? よろしくお願いします。

  • 10進数を表す文字列を整数型に

    "0x10"(16進数) や "020"(8進数) などは oct関数で整数型に直せますが、 10進数の文字列を整数型に直す関数はありませんか?

    • ベストアンサー
    • Perl
  • 文字列を大文字の2桁ごとのコンマ付き16進数に変換する方法

    文字列を大文字の2桁ごとのコンマ付き16進数に変換する方法がわかりません。ただ単に文字列を16進数に変更するだけならbin2hex()でできますけど、誰か知っている方はいませんか?具体的には、変換された文字列が1a2b3c4d5e6fなら、1A.2B.3C.4D.5E.6Fと変換したいんです。どうすればいいですか?

    • ベストアンサー
    • PHP

専門家に質問してみよう