(toppers-users 599) Re: systask/serial.c で MAX_FLUSH_LOOP と比較している変数のデータ型について

Hiroaki TAKADA hiro @ ertl.ics.tut.ac.jp
2002年 11月 6日 (水) 20:10:08 JST


斉藤様

> systask/serial.c にある serial_close 関数で
> int型の変数 i と MAX_FLUSH_LOOP との比較をしている箇所があるのですが,
(中略)
> そこで変数i を W か UW のようにしたらこのような問題は解決するように
> 思うのですが, いかがでしょうか.

ご指摘ありがとうございます。次のバージョンで、UW に修正させていただき
ます(もっとも、シリアルドライバが全面改訂される可能性は残っています
が)。

また、MAX_FLUSH_LOOP の定義を以下のように修正します(最後に L を追加)。

#define MAX_FLUSH_LOOP  1000000L

> これに便乗して一つ質問させていただきたいのですが,
> (FAQでしたら恐縮ですが)通常のCデータ型とITRON仕様共通データ型は
> 皆様どのように使い分けていらっしゃるのでしょう?

難しい問題ですね。:-)

ITRON と直接関係するコードは ITRON仕様共通データ型を使う。OS に依存し
ないコードでは、通常のC のデータ型を使う、といったあたりが妥当なのでは
ないでしょうか。ただ、W, UW などは、コンパイラに依らずにサイズが決まり
ますので、ITRON と直接関係がなくても使うメリットがあると思います。

高田広章
豊橋技術科学大学