
No.3ベストアンサー
- 回答日時:
ANo1さん、ANo2さんと基本同じです。
ビット操作で実行する方法もあるという参考まで。static char tbl[ 16 ] = { '0', '1', '2', '3', '4', '5', '6', '7',
'8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
void to_hex( char c, char *str )
{
str[ 0 ] = tbl[ ( unsigned char )c >> 4 ]; // n / 16 と同じ (注意)
str[ 1 ] = tbl[ ( unsigned char )c & 0x0f ]; // n % 16 と同じ
str[ 2 ] = '\0';
}
注意: unsigned char にキャストしないと、符号ビットが残るので
期待した結果にならない。
No.2
- 回答日時:
★おまけ。
・char型の1文字は、8ビットです。
それをアスキーコードの16進数表記に変換数には、
『n / 16』が上位4ビット、
『n % 16』が下位4ビットとなります。
・上位/下位に分けれたらば、回答者 No.1 さんのアドバイスどおりに 0 ~ 15 の整数を
'0'~'9'、'A'~'F'という1文字で出力すれば良い。
・'0'~'9'、'A'~'F'という1文字はchar型の配列テーブルにでも持っておけば『配列』を
参照するだけで1文字に変換できます。
・以上。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
配列をnビットシフトする
-
fgetsなどのときのstdinのバッ...
-
【C言語】テキストファイル内の...
-
double型の値をchar配列に変換...
-
C言語 文字列操作
-
制御の方法
-
charからLPTSTRへの変換方法
-
Microsoft OfficeをDDEで操作
-
sprintfに同じ変数は使えるか
-
間接操作のレベルとは
-
バイナリファイルをコピーする...
-
c言語プログラミング実行時エラ...
-
RGB→YUV変換のプログラム
-
int型のchar型への代入について
-
const unsigned char *Ptn
-
16進数関数のhex関数について
-
入力された文字列から整数だけ...
-
C言語 バイナリファイルをfloa...
-
C言語のfor文です。 繰り返しの...
-
ランダムな英文字の文字列作成
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
構造体の各メンバにfor文からア...
-
fgetsなどのときのstdinのバッ...
-
文字列から空白を取り除きたい...
-
C言語のfor文です。 繰り返しの...
-
CStringをwchar_tに変換したい
-
間接参照のレベルが異なっています
-
c++ 文字列を入力して、一文字...
-
C言語の入力した文字を反転させ...
-
charからLPTSTRへの変換方法
-
ネットワークにつながっている...
-
'const char *' 型は 'char *' ...
-
テキストデータをそのままバイ...
-
c言語でユーザ関数を利用して入...
-
atoi( ) の反対をやりたい
-
間接操作のレベルとは
-
-'0'の意味について
-
double型の値をchar配列に変換...
-
Linuxでフォルダ内全ファイル名...
-
配列をnビットシフトする
-
型変換
おすすめ情報