プロが教えるわが家の防犯対策術!

こんにちは。

Windows環境です。

ある変数に0-9,a-zのアスキーコードの数字が格納されています。
それを元の数字や文字列にデコードしたいと思うのですが
どのようにすればよろしいのでしょうか?

どなたかご存知の方、よろしくお願いします。

A 回答 (5件)

参考URLの質問8.6をご覧ください。


majikaruさんはこのあたりの勘違いをされているのではないでしょうか?

'a'に対応するアスキーコードが 61 の場合、
'a' という文字定数は、整数の 61 そのものです。

printf("%d %c\n",61,61);
printf("%d %c\n",'a','a');
を実行してみればそれが実感できるのではないでしょうか。

参考URL:http://www.kouno.jp/home/c_faq/c8.html
    • good
    • 0
この回答へのお礼

ご返答ありがとうございます。

指定URLのサイト、とても参考になりました。
貴重な情報ありがとうございました。

お礼日時:2004/09/16 12:10

#3のhpskです。

ちょっと訂正です。

'a'に対応するASCIIコードは 61 は 61 でも、16進の61なので、

> printf("%d %c\n",61,61);
は、
printf("%d %c\n",0x61,0x61);
が正しいです。
    • good
    • 0

No2です。


単純に10進数にするのだと思ってました。
よく考えたらg~zなんて無理ですねw

回答としてはNo3さんに同意見です。
    • good
    • 0
この回答へのお礼

ご返答ありがとうございます。

参考にしたいと思います。

お礼日時:2004/09/16 12:11

ある変数が文字列'0'~'9'の値であれば


ある変数から文字列'0'を引けば出ます。
小文字の'a'から'z'であれば
ある変数から文字列'a'を引いて10足せば出ます。
大文字も一緒ですね。

こんな回答でいいでしょうか?
    • good
    • 0

0-9 はいいとして、 a-zのアスキーコードの'数字'とはなんですか?

    • good
    • 0
この回答へのお礼

説明不足で失礼しました。

例えば「1」の数字であったら
char test;
のtestには「30」というアスキーコード(の数字)が
格納されているという意味です。
「a」であれば61ですね。

お礼日時:2004/09/06 16:52

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!