Skip to content

用 VS2026 编译 C++ 程序

目录

IMPORTANT

认真阅读!!!

注意事项

基本知识

  • 项目:完成一个特定功能的所有源程序组成一个项目(简单来说,一道作业题一个项目)
    • 源程序文件:完成程序特定功能的代码,一个项目允许有多个源程序文件(最开始几周,一个项目一个源程序文件)。C 语言源程序文件后缀名通常为 .c,C++源程序文件后缀名通常为 .cpp
    • 头文件:源程序文件中有特殊用途的一种,通常无后缀名或以 .h 为后缀名,具体在第 4 章会接触到
    • 可执行文件:由源程序文件编译得到,可以直接在计算机中运行的程序(*.exe)。一个项目最多只会生成一个可执行文件
  • 解决方案:VS2026 提供的、可同时管理多个项目的集成环境(有效使用解决方案,能极大提高效率)

编写程序步骤概览

  1. 创建新项目(第一次创建新项目会同步建立一个解决方案)
  2. 在项目中建立新的源程序文件 (*.cpp/*.c)
  3. 对源程序文件 (*.cpp) 进行编译,若成功则生成编译结果文件 (*.obj)
    • 检查语法错误,错误分 致命错误(error)警告错误(warning)
    • error 会导致编译失败,warning 不影响编译,但意味着编译器认为程序很可能有错或写得不好
    • warning 只在源程序改动后的 第一次编译时出现,之后不再出现
    • VS2026 下 warning 有两种:常规 warning 及智能提示 warning,只需要解决常规 warning 即可,具体识别及处理参见 FAQ
  4. 对编译结果文件 (*.obj) 进行链接,检查链接过程中的错误,形成可执行程序文件 (*.exe)
  5. 运行可执行程序文件 (*.exe) ,检查其中的逻辑错误,验证程序正确性
    • 编译执行过程中会产生很多临时文件 (交作业时只有*.c/*.cpp是需要的)

新建项目并新建解决方案

1. 启动 VS2026

方法 1:选择“创建新项目”

启动新项目

方法 2:选择“继续但无需代码”后进入主界面,按“新建文件”按钮旁边的🢓,在出现的菜单中选择“新建项目/解决方案” (直接按 Ctrl+Shift+N 也可)

新建解决方案

方法 3:选择“继续但无需代码”后进入主界面, 菜单-“文件”-“新建”-“项目/解决方案” (直接按“Ctrl+Shift+N”也可)

菜单-新建解决方案

2. 建立空项目

出现的对话框中,选择“空项目”,按“下一步” (不要选错)

空项目

3. 配置项目

出现的对话框中,“项目名称”、“位置”、“解决方案名称”等按需修改,最后按“创建”

配置项目

4. 检查配置

项目/解决方法新建成功后,出现如下界面,检查标记的各处是否正确

检查配置

注:因为上一步设置的“项目名”和“解决方案名”不同,界面上显示不同,请注意观察

5. 新建源文件

在项目“helloworld”的“源文件”上按鼠标右键,出现的菜单中选择“添加”-“新建项”(直接按 Ctrl+Shfit+A 也可)

新建项

6. 显示所有模板

在出现的“添加新项”对话框(简版)中选择“显示所有模版”(课程后期需添加其他类型文件,因此进行设置)

显示所有模板

7. 输入文件名

出现的对话框中选择“C++ 文件(.cpp)”,在“名称”中输入 C++ 源文件的名称 (按作业要求命名),按“添加”

输入文件名

8. 在新添加的源程序文件中输入你的代码

编写代码

cpp
#include <iostream>

int main()
{
    std::cout << "Hello, 同济大学!" << std::endl;
    return 0;
}

TIP

第 6 行的 endl 的最后一个字符为小写字母 l,而非数字 1。endl 为“end of line”的缩写,用于在输出时换行。

9. 保存源程序文件后字符集编码正确

IMPORTANT

非常重要,作业中设置错误可能导致当题不得分

字符集编码

10. 运行程序

输入完成后,“调试”-“开始执行(不调试)” (推荐直接按 CTRL+F5 组合键)

运行程序

11. 查看结果

如果程序正确,则会执行并显示运行结果

程序结果

DANGER

有基础的同学,可能知道在源程序最后加 system("pause");getchar(); 之类的语句来暂停

特别声明,在作业中 不允许 使用这些方法 ,否则该题得分以0分计算

12. 排查错误

果源程序有错误,则出现的对话框选择“否”,再根据编译时产生的错误提示信息修改源程序,再选择“调试”-“开始执行(不调试)”(第 10 步) ,反复多次直至程序正确运行为止

排查错误

TIP

这一步看到的错误窗口可能是“错误列表”,注意按图中要求切换至“输出”,二者差异详见 FAQ: “错误列表”与“输出”

13. 关闭解决方案

一个程序完成后,“文件”-“关闭解决方案”,或右上角 x 关闭

关闭

目录结构说明

若:

  • 文档 第 3 步 中名称、位置、解决方案名称三者的设置分别是 helloworldD:\homework
  • 文档 第 7 步 新建的源文件为 helloworld.cpp

则:

  • 打开 D:\ 文件夹,可以看到 homework 文件夹
  • 打开 D:\homework 文件夹,可以看到 helloworldx64.vs 文件夹
  • 打开 D:\homework\helloworld 文件夹,可以看到 helloworld.cpp
  • 打开 D:\homework\x64\Debug 文件夹,可以看到 helloworld.exe

TIP

.vs 是一个隐藏文件夹。如果在安装 VS 前、调整文件夹选项 时未选择“显示隐藏的文件、文件夹和驱动器”,这里会看不到它。

目录结构

问:如何编写并调试一个程序?

通过步骤 1-13,可以完成一个程序的编写及调试。

问:如何编写并调试下一个程序?

在已有解决方案中新建项目

1. 启动 VS2026,打开刚才的“homework”解决方案

  • 方法 1:打开 D:\homework 文件夹,双击 homework.slnx

打开slnx

  • 方法 2:启动VS2026,“最近使用的内容” 选 homework.slnx

打开最近内容

  • 方法 3:“文件” - “最近使用的项目和解决方案” - 选择 homework.slnx

打开最近项目

  • 方法 4:选择“打开文件”按钮旁边的🢓,选择“打开项目/解决方案”,在出现的对话框中,找到 D:\homework 目录,选择 homework.slnx ,按“打开”

打开文件

  • 方法 5:“文件” - “打开” - “项目/解决方案”,出现的对话框中找到 D:\homework 目录,选择 homework.slnx ,按“打开”

打开解决方案

2. 新建项目

在解决方案“homework”上按鼠标右键,菜单中选“添加” - “新建项目”

注意:不是“helloworld”项目的右键菜单!

新建项目

3. 配置新项目

出现的对话框中,选择“空项目”,按“下一步”,在出现的对话框中,输入项目名称,按“创建”

空项目

配置第二个项目

4. 切换“启动项目”

4-1:项目“myinfo”新建成功后,左侧解决方案资源管理器显示两个项目,其中粗体表示的为启动项目

说明

如果一个解决方案中有多个项目,则有且仅有一个“启动项目”,按 “调试” - “开始执行(不调试)” / CTRL+F5 执行程序时,执行的是启动项目

启动项目

4-2:在“myinfo”项目上按鼠标右键,菜单选“设为启动项目”

TIP

鼠标必须放在要设置的项目上!

设为启动项目

4-3:左侧的“myinfo”变为粗体,表示启动项目已切换为“myinfo”

切换后的启动项目

第 5~13 步:在 myinfo 项目中添加源程序并进行编辑、修改、编译、运行

(下述第 5~13 步,与 helloworld 项目的第 5~13 步相同,截图及详细说明略)

第 5 步:在项目“myinfo”的“源文件”上按鼠标右键,出现的菜单中选择“添加”-“新建项”

第 6 步:如果项目“helloworld”中已设置为“显示所有模版”,则直接进入第 7 步

第 7 步:出现的对话框中选择“C++文件”,在“名称”中输入C++源文件的名称 (按作业要求命名),按“添加”

第 8 步:在新添加的源程序文件中输入你的代码

第 9 步:确认右下角两个设置是否为“CRLF”和“GBK”

第 10 步:输入完成后,“调试”-“开始执行(不调试)” (推荐直接按 CTRL+F5 组合键)

第 11 步:如果程序正确,则会执行并显示运行结果

第 12 步:如果源程序有错误,则出现的对话框选择“否”,再根据编译时产生的错误提示信息修改源程序,再选择“调试”-“开始执行(不调试)” (第 10 步),反复多次直至程序正确运行为止

第 13 步:一个程序完成后,“文件”-“关闭解决方案”,或右上角 x 关闭

目录结构说明-创建第二个项目后

若:

  • “homework”解决方案,目录为 D:\homework
  • “homework”解决方案中有“helloworld”和“myinfo”两个项目
  • “helloworld”项目中建立的源文件为 helloworld.cpp ,“myinfo”项目中建立的源文件为 myinfo.cpp
  • helloworld.cppmyinfo.cpp 分别被编译成可执行文件 helloworld.exemyinfo.exe

则有:

最终目录结构