2012-01-06 10 views
0

Cコードを含む4つのファイルがあります。複数のソースファイルをコンパイルする

Headers.h - (含まれているが、必要なすべての)ヘッダ

AddStudent.hからAddStudent.h

main.cに記載されている機能が含まれています - - Headers.hはまた、いくつかの機能の委任

AddStudent.cを導入含まれ、そのファイルはmain()

含まれてい

質問はccでコードをコンパイルする方法ですか?あなたのケースでは

+1

'cc main.c -o main -I.' BUT関数の実装はCファイルに残す必要があります。したがって、AddStudent.hはAddStudent.hの関数の実装であるため、実際はAddStudent.cppにする必要があります。この場合、次のようにする必要があります: 'cc main.c AddStudent.c -o main -I.' – karlphillip

+1

宿題は宿題としてタグ付けされるべきです – pm100

+0

私はあなたがaddstudent.c(とaddstudent.h)を意味すると仮定します – pm100

答えて

2

、あなたはおそらく必要があります。

cc main.c AddStudent.c 

行う権利事はメイクファイルを作るです。ここでは(おそらくビットナイーブ)の例です:

myapp: main.o AddStudent.o 
    cc -o myapp main.o AddStudent.o 

main.o: main.c AddStudent.h Headers.h 
    cc -c -o main.o main.c 

AddStudent.o: AddStudent.c AddStudent.h Headers.h 
    cc -c -o AddStudent.o AddStudent.c 

についてmakeを学ぶのに最適な場所はGNU Make Manualです。

ボーナスノート - Cを学び始めている場合は、clangをチェックしてみてください。 の方法では、はgccよりも優れたエラーメッセージを出すだけでなく、特別なフラグを付けずにC99をサポートし、コンパイル時の方がはるかに高速です。

+0

使用する命名規則を教えてください。 – summerc

+0

私はそれが今やいいと思う - 元の投稿には奇妙に見えるタイプミスがありました。 –

+0

少し怖いです。もし私が20以上の.h/.cファイルを持っていれば苦痛になります。 – summerc

関連する問題