2008-11-16 97 views
1

我剛開始編寫試圖用C編寫一個簡單的程序,我正在使用Visual Studios來這樣做。我聽說它可以編譯C以及C++。而且我知道它確實是因爲它說它編譯。唯一的問題是,當我進入輸出目錄時,目錄中沒有.exe文件!它具有如下:爲什麼我的C代碼沒有被編譯爲EXE

  • BuildLog.html
  • mt.dep
  • test1.obj
  • vc90.idb
  • vc90.pdb

但僅此而已!沒有EXE。我查看了所有選項,並確保它被設置爲編譯爲exe文件,並且檢查了輸出文件。這是$(OutDir)\ $(ProjectName).exe。但是,唉,沒有EXE出現。有任何想法嗎?

而且當我嘗試按F5與出道運行我得到說

此應用程序未能啓動 因爲MSVCR90.DLL沒有發現錯誤。 重新安裝應用程序可能會修復 此問題

+0

爲什麼不向我們展示buildlog.html的內容? – 2008-11-16 02:40:55

+0

並向我們展示test1.c的內容。 – 2008-11-16 02:53:29

回答

4

默認情況下,當你一個新的解決方案中創建一個新的C++項目,你得到的文件夾結構是這樣的:

C:\項目\ YourSolution C:\項目\ YourSolution \ YourCppProject

YourSolution包含YourSolution.sln,YourCppProject包含YourCppProject.vcproj。

當您構建解決方案時,YourCppProject中的所有中間文件都存儲在YourCppProject \ Debug或YourCppProject \ Release下,但YourCppProject.exe的結果位於YourSolution \ Debug或YourSolution \ Release下。

您的$(OutDir)由General - > Output Directory進行配置。檢查YourCppProject的項目配置並查看它使用$(SolutionDir)作爲輸出。

2

它是C/C++控制檯應用程序嗎? 您是否使用項目嚮導來創建它?

你有一個像

#include "stdafx.h" 

int _tmain(int argc, _TCHAR* argv[]) 
{ 
    printf("Hello, world!\n"); 
    return 0; 
} 
一.C模塊中

功能,通常MAIN.C?

當您按F5運行調試時會發生什麼? 你的構建日誌是什麼樣的?

1

最簡單的事情就是重新開始,確保您選擇正確的項目類型。

要使用Visual Studio編譯普通的舊C代碼,請從New Project菜單中選擇Visual C++ > General > Empty Project。這會創建3個空文件夾:頭文件,資源文件和源文件。右鍵單擊源文件,選擇Add > New Item。然後添加main.cpp,將其重命名爲main.c,然後開始編碼。

0

http://msdn.microsoft.com/en-us/library/ms235299.aspx

注:

它不支持重新分配是內置 沒有明顯 C/C++應用程序。 Visual C++ 庫不能被C/C++ 應用程序使用而沒有清單 將應用程序綁定到這些 庫。有關更多信息,請參閱 選擇部署方法。

如果DLL不可達,並 Windows無法加載這個DLL你 的應用程序,你可能會收到以下 錯誤消息:

此應用程序未能啓動 因爲MSVCR90.DLL不找到。 重新安裝應用程序可能會修復 此問題。

要解決這些錯誤,你必須 確保您的應用程序正確建立 和Visual C++庫 正確部署目標 系統。要確定這些運行時錯誤的根本原因,請遵循 C/C++隔離應用程序和 並行程序集中列出的 步驟。

HTH

0

聽起來你只打了編譯,這將使你,你obj文件,但你仍然需要點擊生成。