2012-09-27 41 views
3

我正在Xcode 4.4.1中編寫一個C程序。一個新的項目從一個main.c文件開始,這顯然是我的主要文件。如果我想寫一個不同的程序呢?如果我選擇File> New File,Xcode會在main.c旁邊創建一個新的.c文件。麻煩的是,當我將代碼放在新文件中時,當我嘗試運行它時,出現與鏈接有關的構建錯誤。我總是可以從program2中獲取代碼並將其粘貼到main.c文件中的全新項目中,但它可以工作,但爲了組織目的(大學工作),我寧願在同一個項目中只有多個文件可以獨立編譯和執行。我對Xcode非常陌生,所以我問,我做錯了什麼/不理解?Xcode 4.4.1 - C編程 - 添加新的.c文件

我有照片要發佈,但我不能因爲我剛剛註冊了此帳戶。提前致謝!

+0

我不是Xcode構建C/C++工具的忠實粉絲。我更喜歡在shell窗口中使用我自己的外部構建工具,例如Makefile。 – ecbrodie

回答

1

我得到一個與鏈接有關的構建錯誤。

讓我猜測:您的其他文件包含main函數。一個項目不允許有多個main函數(實際上,所有非靜態函數都必須具有唯一的名稱)。 main不需要在main.c文件中,但只需要一個main

一種解決方案是重命名其他文件的功能,除了要跑到別的一(main2main3,等等)。這將阻止鏈接器抱怨。

但是,這種方法很容易出錯。標準方法是使用多個項目 - 每個程序都有一個用於編寫。爲方便起見,您可以將它們保留在同一個Xcode工作區中,但每個應該有一個單獨的目標和自己的main.c文件。

1

您可以使用單個Xcode項目,但在該項目中創建多個目標。

要添加第二個目標,單擊添加目標按鈕,如下圖所示:

enter image description here

就像你在New Project窗口做了最初,添加一個目標,一個基於C的命令行工具如下圖中:

enter image description here

這將創建一個適用於新添加的目標main.c文件,你的項目文件夾內的另一個文件夾。新的目標將設置爲「編譯源」構建階段,該階段僅構建新創建的main.c文件而不是其他目標的main.c文件,從而減輕您之前獲得的構建錯誤。

enter image description here

要控制你想要的工作,從工具欄中選擇的方案彈出菜單中適當命名的方案,該方案的目標。