Visual Studio 2012没有安装C头文件?

5
我已安装了VisualStudio 2012并使用了约两周时间。但现在我想开始一个C++项目(我通常是C#程序员),我写了一些简单的代码。之后我想编译它,但是我收到了很多错误提示......找不到标准C头文件。
我的操作如下: 创建了一个新的Win32项目(空项目); 使用以下包含内容创建代码:
#include <windows.h>
#include <stdlib.h>
#include <string.h>
#include <tchar.h>

只找到了 Windows.h,其余的没有找到。有人有想法吗? 我也看了 IncludeDirectories:

$(VCInstallDir)include
$(VCInstallDir)atlmfc\include
$(WindowsSDK_IncludePath)

这就是全部。有人有什么想法吗?


2
检查你的安装。我的标准C头文件位于C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include。确保你的也在这里。 - rubenvb
1
@thefiloe - 这是一个宏。"$(VCInstallDir) - 您安装 Visual C++ 2010 的目录。" - 请参阅 http://msdn.microsoft.com/en-us/library/c02as0cs(v=vs.100).aspx - SChepurin
1
@SChepurin:这是错误的建议。<stdlib.h>才是正确的; "stdlib.h"可能是等价的,但存在风险,会找到另一个同名的头文件。<tchar.h>可能是正确的(它不是C标准头文件)。<string><string.h>是两个完全不同的头文件。 - Keith Thompson
@SChepurin:抱歉,但那绝对是错误的建议。您所建议的更改不会有所帮助,并且将<string.h>更改为<string>可能会导致程序无法编译。 - Keith Thompson
@Keith Thompson - 目前是这样的,没错。当然,这样做不会有害。我并不会为过去的评论辩护(这肯定会看起来很奇怪),我只是回答你的评论。希望你在圣地亚哥有更有成效的事情要做。 - SChepurin
显示剩余13条评论
2个回答

1

也许你遇到了这个已知问题: https://connect.microsoft.com/VisualStudio/feedback/details/774158/re-installed-visual-studio-2010-and-c-standard-headers-are-missing 如果你安装了 Visual Studio 2012 并从 Visual Studio 2010 导入设置,然后卸载并重新安装它,C++ 标准头文件就会消失。

我找到了一个解决方案,Jeff 在以下链接中提出: https://social.msdn.microsoft.com/Forums/vstudio/en-US/a987f4fa-676f-4fda-ab69-2c6bcc2684c3/visual-studio-c-2012-standard-header-files-are-missing?forum=vssetup

这意味着使用orca修改vc_librarycore.msi的副本,然后运行它。这将安装VC文件夹的一部分,其中包含包括文件(请注意,根据答案所建议的直接修改原始的vc_librarycore.msi并不起作用,可能是因为权限问题,所以我将整个vc_librarycore文件夹复制到了另一个目录中)。还要注意,答案中使用的UUID可能会根据应用于Visual Studio 2012的更新而发生变化。

0

你的安装肯定有问题,我建议你重新安装。在我的VS2012版本中,我可以很好地使用这些包含文件。这是Visual Studio Express版本吗?如果是,你可能还需要安装Windows平台SDK。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接