2016-05-01 89 views
0

我想開始學習C++。 不過,我不斷收到這些錯誤:Visual Studio C++無法打開某些標題我今天不想刻意包含

無法打開源文件「stdio.h中」
無法打開源文件「TCHAR.H」
無法打開源文件「SDKDDKver.h」

但是,我甚至在默認的空win32控制檯項目中獲得這些。

有誰知道如何解決這個問題?

操作系統:Windows 10

我的默認代碼如下所示:

// HelloWorld.cpp : Defines the entry point for the console application. 
    // 

    #include "stdafx.h" 


    int main() 
    { 
     return 0; 
    } 

的錯誤是:

Severity Code Description Project File Line Suppression State 
Error (active)  cannot open source file "stdio.h" HelloWorld c:\Users\HP\Documents\Visual Studio 2015\Projects\HelloWorld\HelloWorld\stdafx.h 10 

Severity Code Description Project File Line Suppression State 
Error (active)  cannot open source file "tchar.h" HelloWorld c:\Users\HP\Documents\Visual Studio 2015\Projects\HelloWorld\HelloWorld\stdafx.h 11 

Severity Code Description Project File Line Suppression State 
Error (active)  cannot open source file "SDKDDKVer.h" HelloWorld c:\Users\HP\Documents\Visual Studio 2015\Projects\HelloWorld\HelloWorld\targetver.h 8 

Severity Code Description Project File Line Suppression State 
Error (active)  cannot open source file "stdio.h" HelloWorld c:\Users\HP\Documents\Visual Studio 2015\Projects\HelloWorld\HelloWorld\stdafx.h 10 

在輸出窗口:

1>------ Build started: Project: HelloWorld, Configuration: Debug Win32 ------ 
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Platforms\Win32\PlatformToolsets\v140\Toolset.targets(34,5): error MSB8036: The Windows SDK version 8.1 was not found. Install the required version of Windows SDK or change the SDK version in the project property pages or by right-clicking the solution and selecting "Retarget solution". 
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== 

編輯:

我相信我有C++安裝,使第一,當我去
文件>新建>項目>的Visual C++
它只會告訴我「爲C++安裝...」,所以我安裝了一個第一個選項(不記得它是哪一個),安裝後允許我創建項目。

+0

看起來你有一個壞的安裝Visual Studio 2015. – drescherjm

+0

@drescherjm所以我必須重新安裝它? – TheXReflex

+0

C++默認不安裝。如果你沒有進行自定義安裝,你應該修改(不需要卸載並重新安裝),這次請求C++。如果你相信你在安裝時選擇了C++,請編輯你的問題。 –

回答

0

檢查您的stdafx.h內容。頭部可以被包含在傳遞中。特別是,您引用的三個ehaders在新項目的VC++ stdafx.h中。如果你正在編程C++,你可以簡單地刪除它們。

(它說一些有關微軟的鬥爭,C和C++之間進行選擇:它們不支持C99,但他們默認爲C頭,而不是C++甚至沒有<cstdio>。)

相關問題