文字コード掲示板


記事表示


No.269投稿日時:2005/02/20(日) 13:57    <↑親記事:No.268>
投稿者:森山 将之

「変換関数内だけでいいので」といいますが

「変換関数内だけでいいので」といいますが、まさに、課題そのものの内容なので、ここで教えたら意味がないですね。

たぶん次の事がわからないのではないでしょうかか?

(1) 1つの unsigned int 型のデータから2つの unsigned char 型のデータへの変換方法
(2) 2つの unsigned char 型のデータから1つの unsigned int 型のデータへの変換方法

一応、この部分だけは、サンプルコードを示しますので、エラーメッセージが出たとしても、そこであきらめてしまうのではなく、エラーの原因をきちんと調べて、コードを修正して動くようにするようにしてください。

C言語のエラーメッセージに慣れるには、きちんと動く事がわかっているコードを、手入力してみて、何か入力ミスをすれば、エラーになりますから、元のコードと見比べて、どういう間違いでエラーになるのかという事を数多く経験するのが手っ取り早いかもしれません。

(1)
unsigned int sjis;
unsigned char s1; /* シフトJIS 1 バイト目 */
unsigned char s2; /* シフトJIS 2 バイト目 */

s1 = (sjis & 0xFF00) >> 8;
s2 = (sjis & 0x00FF);

(2)
unsigned int euc;
unsigned char e1; /* EUC 1 バイト目 */
unsigned char e2; /* EUC 2 バイト目 */

euc = (e1 << 8) | e2;


Script : Sylpheed 1.24
Modified by MORIYAMA Masayuki