2009-08-09 91 views
0

我決定潛入一些用C語言編寫的代碼,並且我想使用Visual Studio。我有視覺 工作室  2008年專業,我現在主要用於C#,但我注意到,在Visual Studio中沒有C選項。使用Visual Studio 2008與C/C++

另外我注意到,雖然Visual Studio有項目,而C++的構建選項都是灰色的,所以我不能構建C++。我需要什麼來構建C++?我可以在Visual Studio中添加項目和構建C嗎?

+0

C++編譯器可以編譯99.9%的有效C代碼。如果你想要像變長數組這樣的特定C99特性,或者如果你的代碼使用了叫做'new'的變量,那麼你可能會運氣不好,否則你應該很安全。 – 2009-08-09 00:13:27

+0

是的,C和C++的通用子集幾乎是完整的C90語言(如果你有C99,那就不太正確了)。但是關於沒有慣用的C代碼不會在C++編譯器上編譯。最常見的罪魁禍首:不是投射malloc()的結果(C程序員堅持認爲這是正確的風格)。 – AProgrammer 2009-08-09 08:36:39

回答

2

Visual Studio沒有在C++和C之間區別很多,而是創建一個C++項目,然後簡單地向它添加.c文件。它將默認將.c文件編譯爲C代碼,將.cpp文件編譯爲C++。

+0

然而就像我在我的帖子中所說VS不會讓我編譯C++。 – UnkwnTech 2009-08-09 03:57:34

1

當您安裝Visual Studio時,它提供了不同的語言作爲選項 - 也許您選擇不安裝C++?

如果是這種情況,則需要再次運行安裝程序。

0

一旦你安裝了Visual C++,我相信它也可以編譯C。你只需要一個不使用C++特性的C++項目。 ; D

0

這已經被討論過關於C/C++編譯器in this topic。如果您已經爲您的C/C++項目使用了2005年(或者其他編譯器/ ide),我甚至都不會使用Visual Studio 2008。這裏還有幾乎沒有任何好處,從2005年

+0

並非完全如此,升級到vs2008的一大好處是,它在Vista中的效果相對較好,這是2005年不能說的。 – 2009-08-09 02:00:20

+0

我在2005年在Vista上開發了相當長的一段時間,那是在Service Pack 1之前。工作得很好,只要你下載所有需要的更新,這些更新可以通過Windows Update獲得。 – 2009-08-09 02:16:36

+0

如果沒有其他問題,VS2008比VS2005顯着更快捷。 – 2009-08-09 22:39:16

0

升級您的環境中開始在VC++一個新的空C或C++項目:

文件>新建>項目...>的Visual C++> Win32項目> OK> [應用 設定]> [清空項目]>確定

然後新的源文件通過右鍵單擊您的項目名稱添加到項目:

添加>新項...>的Visual C++>代碼> C++文件(的.cpp)>添加

只要確保你明確地給你的文件擴展名爲.c如果你想。

告訴VC++編譯整個項目爲C,而不是C++,右擊你的項目名稱:

屬性>配置屬性> C/C++>高級>編譯爲>編譯爲C代碼(/TC)>好吧

(對於單個文件擴展名爲.c的情況應該已經是這種情況了)。您可能還會檢查各種其他設置是否合適。

就像RichieHindle所說,你可能在安裝VS時沒有安裝VC++。在這種情況下,你需要先安裝它,然後才能做任何事情。希望有所幫助。 :)

+0

根據C/C++代碼的作用,您可能希望在上面的階段#1中創建控制檯應用程序。 – 2009-08-09 10:38:45

+0

是的,我無法決定是否想寫上面的「Win32 Project」或「Win32控制檯應用程序」,但由於實際上可以在「應用程序設置」中更改它,所以並不重要。 – KTC 2009-08-09 10:48:48

1

你確定你已經安裝了C++編譯器+相關選項嗎?