当前位置: 首页 > news >正文

VScode怎么运行一个c语言程序

以下是在 Visual Studio Code(VS Code) 中运行 C 语言程序的完整步骤,涵盖环境配置、代码编写、编译和调试:


1. 安装 C 语言编译器

Windows
  1. 安装 MinGW-w64(GCC 编译器):

    • 下载地址:MinGW-w64

    • 安装时选择:

      • Architecture: x86_64

      • Threads: posix

      • Exception: seh

    • 添加环境变量:

      • 将 C:\mingw64\bin 添加到系统环境变量 PATH

    • 验证安装:打开终端,输入 gcc --version,看到版本信息即成功。

macOS
  1. 安装 Xcode Command Line Tools

    • 打开终端,输入:

      bash

      复制

      下载

      xcode-select --install
    • 验证安装:输入 gcc --version

Linux(Debian/Ubuntu)
  1. 安装 GCC

    bash

    复制

    下载

    sudo apt update && sudo apt install build-essential
  2. 验证:gcc --version


2. 配置 VS Code

2.1 安装必要扩展
  1. C/C++ 扩展:VS Code 左侧扩展商店搜索 C/C++,安装 Microsoft 官方插件。

  2. Code Runner(可选):快速运行代码的插件。

2.2 创建工作目录
  1. 新建一个文件夹(如 C_Projects),用 VS Code 打开它。

2.3 配置编译任务
  1. 生成 tasks.json

    • 按 Ctrl+Shift+P → 输入 Tasks: Configure Task → 选择 Create tasks.json file from template → 选择 Others

    • 替换文件内容为:

      json

      复制

      下载

      {"version": "2.0.0","tasks": [{"label": "Compile C","type": "shell","command": "gcc","args": ["-g",           // 生成调试信息"${file}",      // 当前文件"-o",           // 输出文件名"${fileDirname}/${fileBasenameNoExtension}.exe"  // 输出路径],"group": {"kind": "build","isDefault": true}}]
      }

3. 编写并运行 C 程序

3.1 创建 C 文件
  1. 在 VS Code 中新建文件(Ctrl+N),保存为 hello.c

  2. 输入代码:

    c

    复制

    下载

    #include <stdio.h>
    int main() {printf("Hello, World!\n");return 0;
    }
3.2 编译代码
  • 按 Ctrl+Shift+B 执行编译任务,生成 hello.exe(Windows)或 hello(macOS/Linux)。

3.3 运行程序
  • 方法 1(终端)

    bash

    复制

    下载

    # Windows
    .\hello.exe
    # macOS/Linux
    ./hello
  • 方法 2(Code Runner):安装 Code Runner 插件后,按 Ctrl+Alt+N 直接运行。


4. 调试 C 程序

4.1 配置调试器
  1. 生成 launch.json

    • 点击左侧调试图标 → 点击 create a launch.json file → 选择 C++ (GDB/LLDB)

    • 替换文件内容为:

      json

      复制

      下载

      {"version": "0.2.0","configurations": [{"name": "Debug C","type": "cppdbg","request": "launch","program": "${fileDirname}/${fileBasenameNoExtension}.exe","args": [],"stopAtEntry": false,"cwd": "${fileDirname}","environment": [],"externalConsole": false,"MIMode": "gdb","miDebuggerPath": "gdb","setupCommands": [{"description": "Enable pretty-printing for gdb","text": "-enable-pretty-printing","ignoreFailures": true}],"preLaunchTask": "Compile C"  // 关联编译任务}]
      }
4.2 开始调试
  1. 在代码中设置断点(点击行号左侧)。

  2. 按 F5 启动调试,使用调试工具栏控制流程(继续、单步跳过、进入函数等)。


5. 常见问题解决

5.1 报错 "gcc 不是内部命令"
  • 原因:编译器未安装或环境变量未配置。

  • 解决:检查 PATH 是否包含 gcc 的路径(Windows 的 MinGW\bin)。

5.2 调试时无法命中断点
  • 原因:编译时未生成调试信息。

  • 解决:确保 tasks.json 的编译命令包含 -g 参数。

5.3 中文乱码
  • 解决:在 tasks.json 的编译参数中添加 -fexec-charset=GBK(Windows)。


6. 高效开发技巧

  1. 智能提示:安装 C/C++ 扩展后,输入代码时会自动补全。

  2. 代码格式化:按 Shift+Alt+F 格式化代码(需安装 C/C++ 扩展)。

  3. 快捷键

    • 快速跳转定义:F12

    • 查看函数引用:Shift+F12

    • 切换头文件/源文件:Alt+O(需安装扩展支持)。

http://www.xdnf.cn/news/658225.html

相关文章:

  • ChatGPT与认知科学:人机协同的未来图景
  • STM32 IIC总线死锁问题总结
  • 洛谷——P3372 【模板】线段树 1
  • webpack吐环境分析
  • 为什么使用ollama运行的模型不用gpu也可以使用
  • [攻防世界] easyphp writeup
  • Graph Neural Network(GNN)
  • 如何通过全流量溯源分析系统实现高效的网络质量监控
  • JavaSE核心知识点04工具04-02(IDEA)
  • 关于(stream)流
  • MySQL的基础操作
  • 内网搭建NTS服务器
  • 网络安全之Web渗透加解密
  • 原子操作(Atomic Operations)在SOC中的应用场景
  • 【R语言编程绘图-函数篇】
  • Sparse VideoGen开源:完全无损,视频生成速度加速两倍,支持Wan 2.1、HunyuanVideo等
  • DAY12打卡 启发式算法
  • 基于yjs实现协同编辑页面
  • 学习黑客Metasploit 框架的原理
  • 端午假期 · 粽享欢乐
  • 开源Vue表单设计器 FcDesigner 组件提供的方法详解
  • 《1.1_4计算机网络的分类|精讲篇|附X-mind思维导图》
  • deepseek告诉您http与https有何区别?
  • CQF预备知识:一、微积分 -- 1.4.6 莱布尼茨法则详解
  • Mysql在SQL层面的优化
  • [Java实战]SpringBoot集成SNMP实现OID数据获取:原理、实践与测试(三十三)
  • GitLab 从 17.10 到 18.0.1 的升级指南
  • 动态规划-918.环形子数组的最大和-力扣(LeetCode)
  • SQL Driver
  • 16QAM通信系统设计与实现(上篇)——信号生成与调制技术(python版本)