Visual Studio 2022命令行编译报错C1083:无法打开stdio.h文件
解决Visual Studio 2022开发者命令提示符编译找不到stdio.h的问题
用对开发者命令提示符
别随便开个普通cmd就编译,得用VS自带的对应版本命令提示符:- 从开始菜单找到“Visual Studio 2022”文件夹,选择「x86 Native Tools Command Prompt for VS 2022」(要编译64位程序就选x64版本)
- 这个提示符会自动运行初始化脚本,把编译需要的
INCLUDE、LIB、PATH等环境变量全部配置好,不用你手动零散添加路径
手动执行vcvarsall.bat初始化环境
要是找不到对应的命令提示符,或者想手动配置环境:- 打开普通cmd,导航到VS安装目录下的vcvarsall.bat路径,默认路径是:
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat - 执行对应架构的初始化命令:
- 编译32位程序:
vcvarsall.bat x86 - 编译64位程序:
vcvarsall.bat x64
执行完成后再尝试编译你的代码,比如输入cl test.cpp
- 编译32位程序:
- 打开普通cmd,导航到VS安装目录下的vcvarsall.bat路径,默认路径是:
检查Windows SDK是否安装完整
- 打开Visual Studio Installer,点击「修改」按钮
- 确认「使用C++的桌面开发」工作负载下,「Windows 10 SDK」(对应你系统的版本)处于勾选状态,且安装完成
- 要是之前SDK安装不完整,重新安装对应版本后再打开开发者提示符尝试编译
验证环境变量配置完整性
初始化环境后,在命令行输入echo %INCLUDE%,应该能看到两个关键路径:- VS自带的VC头文件路径,比如
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\<具体版本>\include - Windows SDK的ucrt路径,也就是你之前找到的
C:\Program Files (x86)\Windows Kits\10\Include\10.0.20348.0\ucrt
只添加ucrt路径没用,cl.exe还需要找到VC自带的头文件才能正常编译
- VS自带的VC头文件路径,比如
内容的提问来源于stack exchange,提问作者x-x
相关产品推荐
相关产品推荐

