2011-08-23 107 views
0

我試圖編譯這個開源代碼庫,http://sourceforge.net/projects/ballisticslib/files/鬼錯誤大廈C源代碼

我得到數百錯誤,其中大部分是在說價值是不確定的,等的代碼有1個文件和源文件被分成7個c文件,這些文件都是正確的方法。現在我對C不熟悉,我的計劃是將此代碼庫設置爲編譯庫並導入並將這些功能包裝到C#中。現在我只是不知道如何擺脫所有這些錯誤,因爲很多說變量沒有定義或缺少分號的時候,表示變量未被定義的錯誤之前的行是變量的聲明。缺少分號(就在那裏)也是一樣。

我已經通過了代碼,沒有看到任何錯誤,沒有人知道我做錯了什麼,它的設置不使用預編譯頭文件,我一直在切換項目屬性中的多個設置。

此外,我創建了一個空的C++項目,並添加的所有文件,這是在VS2010

任何幫助將不勝感激。

+0

也許你可以告訴我們錯誤是什麼? – Bill

+0

我可以發佈所有70個,但它們是同一件事的倍數。有3種不同的,未聲明的標識符錯誤,語法錯誤:缺少';'在'類型'之前,那麼關於不同標識符的多個智能感知錯誤是未定義的。沒有什麼有用的。正如我所說的那些未聲明的標識符發生在變量被聲明後,例如。 int s = 0; (s = 0; s <= 100; s ++) { } 它在for循環中表示s是未定義的( )。所以別的東西就是造成錯誤。 – michael

+0

在發佈70個錯誤和0個錯誤之間有一個愉快的媒介。也許是在他們指向的代碼之後發佈兩三次?而且,在舊式的C中,所有的聲明都必須在函數中的其他任何東西之前發生。如果將'int n = 0'移動到函數頂部會發生什麼? – Bill

回答

1

看着代碼,它是以一種不尋常的方式建立的。 _ *。c文件實際上包含在ballistics.h中。這意味着你的項目應該只包含example.c,其餘的C文件被包含而不是編譯。

+0

我已經完成了所有_ *。c文件現在位於解決方案資源管理器中的External Dependencies文件夾中,包括ballistics.h,現在我得到27個錯誤,只是M_PI未聲明,並且整數n未被聲明_solve.c文件,但在錯誤發生之前,我可以看到n被聲明爲一個整數並設置爲0. – michael

+0

@michael - M_PI好像是3.1415926?對於未聲明的整數n的問題,我猜可能會丟失一些分號。只需檢查編譯器告訴你的線。 – Stan