2012-03-25 10 views
2

私はUCOSソースファイルを読んだとき、私はucos_ii.c.cファイルをインクルードする利点は何ですか?

#include "os_core.c" 
#include "os_mbox.c" 
#include "os_mem.c" 
#include "os_q.c" 
#include "os_sem.c" 
#include "os_task.c" 
#include "os_time.c" 

にこのコードを見つける.cファイルを含むのadvandageは何ですか?

+1

.hファイルを含むのとは対照的に? –

答えて

4

このようにすることで、コンパイラはより多くのインライン化やスペース最適化を行うことができます。 uCosは組み込みのオペレーティングシステムなので、スペースや時間を節約するものはすべて良いことです。 (理由の範囲内で)

+1

なぜuCosコードでこれが可能なのか –

1

Cでのコーディングのエピソードが遠く、間にあるので、私が間違っていると誰かが訂正してくれることを願っていますが、AFAIKのように.cファイルを追加すると、定義されているすべての機能そのファイルに含まれているファイルに直接コーディングされているかのようにそのファイルに格納されます。これにより、よりシンプルで再利用可能な部分からより複雑なファイルを構築できるはずです。

+5

あなたが言うことはすべて真実ですが、物事についての通常のやり方ではありません。通常、すべての.cファイルを個別にコンパイルし、最後にそれらをリンクします。 –

+0

@CarlNorum私はそれほど考えました。フォローアップありがとう。 –

+0

これはまさに私がしていることです。 – Mikhail

0

私は、これは、システムライブラリ関数をインポートするために使用されていると思うし、あなたはそれが

2

の作品よりも、システムライブラリからそれはシンプルなメイクファイルを必要とすることによって構築プロセスを簡素化することができますメソッドを使用する必要がある場合。この場合、7個以下のファイルをメークファイルに追加する必要があります。しかし、プロジェクトが大規模になると、それはすぐに扱いにくくなります。

もう1つの欠点は、他のcファイルで通常は内部リンケージを持つ変数が使用できることです。

関連する問題