2011-05-16 254 views
0

這是作業分配的一部分。我們需要做的是編寫一個makefile來編譯以前的作業解決方案。這些解決方案由教授提供,他們將用於測試我們的makefile。其中一個文件有#include "quicksort.c"在另一個.c文件中包含.c文件

我知道不鼓勵類似的東西的用法,但是,這並不真正幫助我:)

什麼將得到兩個文件編譯(文件quicksortTest.c,其中包括quicksort.c最好的方法,和quicksort.c本身)?

什麼我現在有我的生成文件的一部分如下:

quicksort: quicksort.c quicksortTest.c 
       $(CC) quicksortTest.c quicksort.c -o quicksortTest 

quicksortTest.c#include "quicksort.c"

當我嘗試它,我得到幾個gcc編譯器錯誤...想法?

回答

3

請勿將quicksort.c更改爲gcc。既然要包括的文件,你不應該seperately編譯:

quicksort: quicksort.c quicksortTest.c 
     $(CC) quicksortTest.c -o quicksortTest 
+0

非常感謝,這沒有辦法。 – littleghost76 2011-05-16 21:18:44

1

做這樣的

quicksort: quicksort.c quicksortTest.c 
      $(CC) quicksortTest.c -o quicksortTest 

考慮給你的老師一個C的書。

+0

對於測試代碼,爲了從測試工具中獲取對內部源的訪問,可以明智地使用'#include' C源代碼。否則,你通常不包含C源文件,你是對的。給老師一本C書是很誘人的;不過,它可能並不具有政治意義。 – 2011-05-16 21:08:41