namazu-ml(avocado)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: byte order and bit length problem
こんにちは、國頭です。
Thu, 26 Feb 1998 04:08:06 +0900 の
[namazu:00269] byte order and bit length problem
(Re: はじめまして )
に関して...........
Satoru> あと、処理はすべて int で行っているのですが、これだと 32bit/64bit
<中略>
Satoru> だそうなので、もし、32bit に統一したいと思ったらなんだか結構厄介そ
autoconf を使えば、自動的に判別できるようになるような気がす
るのですが、実際に使ったことはないのでわかりません。
/* checkint.c */
printf "/* namazuint : alwayss 32bit !! */\n";
if( sizeof(int) == 4 )
{ printf "typedef int namazuint;\n"; }
else if( sizeof(short) == 4 )
{ printf "typedef short namazuint;\n"; }
else if( sizeof(long) == 4 )
{ printf "typedef long namazuint;\n"; }
のようなプログラムをMakefile 中で
$(CC) -o checkint checkint.c
./checkint > namazuint.h
rm checkint
のようにして、namazu.c の中で namazuint.h を読み込むというの
はどうですか? そうすればnamazu.c の中では常に namazuint
(もっとかっこいい型のほうがいいかもしれませんが^^;)を使え
ばいいので、#ifdefとか使わなくてすむから楽だと思います。つい
でにバイトオーダーもnamazu.cのコンパイル前に判別することもで
きそうではありませんか?
他にかっこいい方法があると思うので、是非僕も教えていただきた
いです。
---------------------------------------
kunito@xxxxxxxxxxxxxxxxxxx