厳密に言えば、あなたが達成しようとしていることは逆効果のようです。
通常、C プログラム内の明示的な型変換の数を減らし、一般的にはソース コード内のすべての型の依存関係を減らすように努めます。優れた C コードは、可能な限り型に依存しない必要があります。これは一般に、特定の型を綴る明示的な構文要素をできるだけ頻繁に避けることが良い考えであることを意味します。したほうがいい
const double foo = 5; /* better */
よりも
const double foo = 5.0; /* worse */
後者は冗長だからです。C 言語の暗黙的な型変換規則により、前者が正しく機能することが保証されます。比較についても同じことが言えます。これ
if (foo > 0)
よりも良い
if (foo > 0.0)
繰り返しますが、前者の方が型に依存しないためです。
この場合の暗黙的な型変換は非常に良いことであり、悪いことではありません。これは、一般的な型に依存しないコードを記述するのに役立ちます。なぜそれらを避けようとするのですか?
場合によっては、型を明示的に表現する以外に選択肢がないことは事実です (2.0
代わりに使用する2
など)。しかし、通常は、本当に必要な場合にのみ行います。なぜ誰かが本当の必要性なしにそれをするのかは私を超えています.