Visual C++ 關於無法打開包括文件:“StdAfx.h”或者意外結尾的錯誤解決方案

最近有朋友在編譯我提供的【Visual C++】遊戲開發某一節筆記的源代碼的時候,提到出現 “fatal error C1083: 

無法打開包括文件:“StdAfx.h”這個錯誤。這裏我專門找了點資料,然後部分修改,寫成了一篇博文發出來,希望能對出現這個問題的朋友們有所幫助。

這個錯誤大都是由於預編譯頭文件及#include<stdafx.h>這兩者的關係糾纏不清引起的,呵呵。

這裏我們採用vs2010講解,其他版本其實操作方案也差不多。


1、如果在Visual C++工程的.cpp文件中包含了代碼#include<stdafx.h>,則工程就需要將屬性設置爲:“使用預編譯頭”,具體方案是對“資源管理器”裏的工程右擊->【屬性】->【配置屬性】->【C/C++】->【預編譯頭】,然後【創建/使用預編譯頭】選擇“使用”

具體操作可以看我截的圖:



2、如果.cpp文件裏包含了stdafx.h文件,設置爲“不使用預編譯頭”,可能會編譯就出現錯誤的,

fatal error C1083: 無法打開包括文件:“StdAfx.h”: No such file or directory,

所以設置爲“創建預編譯頭”,或者設置爲“使用預編譯頭”。

3、如果出現下面錯誤: fatal error C1010: 在查找預編譯頭時遇到意外的文件結尾。是否忘記了向源中添加“#include “stdafx.h””?

則表示沒有包含stdafx.h文件,設置爲”不使用預編譯頭“即可。

4、因爲最近做了matlab與vc混編,所以,生成了.c文件,.c文件是不能使用預編譯頭的,如果讓這樣的文件“使用預編譯頭”,會出現下面錯誤的:

“Debug\SMMS.pch”預編譯頭文件來自編譯器的早期版本,或者預編譯頭爲 C++ 而在 C 中使用它(或相反)

所以,在.c文件右鍵->【屬性】->"不使用預編譯頭“。注意只是此文件的屬性。


原文:http://blog.csdn.net/zhmxy555/article/details/7451186

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章