2011-07-04 175 views
-1

我在Xcode項目中添加了兩個文件(takeoff.h,takeoff.c),包括從另一個項目粘貼一些代碼。現在編譯成功後,Xcode似乎無法識別新文件。即使所有代碼編譯都正常,main.c的調用也會被忽略。怎麼回事,我該如何解決?Xcode不識別文件

// main.c 
int main() 
{ 
    void test(void); // located in takeoff.c JUST IGNORED 
} 

//takeoff.c 
void test(void) 
{ 
    print("Printed from takeoff.c"); // no printing nor do breakpoints stop her 
{ 
+0

我的部分愚蠢的錯誤。在我上面的評論中的大括號只是一個錯字,但我有主要的原型,而不是實際的調用。令人沮喪的新手在。你們是一個巨大的幫助。謝謝。 – MonkeyBusiness

+0

爲了將來的參考,總是試着複製和粘貼實際的代碼,而不是重新輸入,否則人們可能會最終嘗試修復由於錯別字等錯誤的問題 –

回答

0

這不是一個有效的函數調用,只是一個函數聲明。

void test(void); // function declaration 

將其更改爲test();

2

更改爲:

// main.c 

void test(void); // <--- NB: function *prototype* 

int main() 
{ 
    test(); // <--- NB: function *call* 
} 

和:

// takeoff.c 

#include <stdio.h> // <--- NB: missing #include for printf 

void test(void) 
{ 
    printf("Printed from takeoff.c\n"); // <--- NB: *printf*, not *print* 
} // <--- NB: fixed closing brace 

(更正標有<---

0

確保.C被添加到目標。在xcode 4中,它是ALT-CMD-1。在「目標會員」的右側,確保您的活動目標已被選中。否則,所有東西都會看起來像是在編譯,但它實際上並不會運行任何東西。