当前位置: 首页 > 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.dtcms.com/a/213711.html

相关文章:

  • Unity—lua基础语法
  • FFmpeg 4.3 H265 二十二.3,avformat_open_input 支持打开的协议
  • Anaconda 的基础教程,从入门到精通
  • FFMPEG-FLV-MUX编码
  • Flink流处理基础概论
  • springboot 微服务下部署AI服务
  • 微服务(SpringCloud)的简单介绍
  • 华为OD机试真题——传递悄悄话(二叉树最长路径问题)(2025A卷:200分)Java/python/JavaScript/C/C++/GO最佳实现
  • 深入研究Azure 容器网络接口 (CNI) overlay
  • 战略3.1 - 战略选择(发展战略-一体/密集/多元化)
  • 深度解析 8086 处理器:x86 架构的奠基者
  • RabbitMQ 核心原理与Spring Boot整合实战
  • 华为云Flexus+DeepSeek征文 | DeepSeek-V3/R1商用服务开通体验全流程及使用评测
  • 【Linux 学习计划】-- 进程概念与本质 | pid ppid | 进程创建与多进程(fork)
  • 黑龙江云前沿-服务器托管
  • 网络原理 | TCP与UDP协议的区别以及回显服务器的实现
  • 【邀请】点击邀请链接参加阿里云训练营活动,完成学习送礼品+鼠标垫+usb拓展坞,一个小时完成
  • Linux输出命令——echo解析
  • GitHub Page填写域名显示被占用
  • [服务器初体验] SSH登录成功后,我的新Linux服务器“空空如也”?三件必做的事让它安全又顺手
  • Go语言开发的GMQT物联网MQTT消息服务器(mqtt Broker)支持海量MQTT连接和快速低延时消息传输-提供源码可二次开发定制需求
  • 中小企业AI算力如何选?【显卡租赁】VS【自建服务器】
  • [运维][服务器][lightsail] Nginx反向代理实现端口映射:将80端口转发至本地5000端口
  • C++ 图像处理库 CxImage 简介 (迁移至OpenCV)
  • 【自然语言处理与大模型】大模型Agent四大的组件
  • 鸿蒙OSUniApp 实现带有滑动删除的列表#三方框架 #Uniapp
  • 系统架构中的限流实践:构建多层防护体系(二)
  • react基础知识(下)
  • React 生命周期与 Hook 理解解析
  • Docker基础 -- Ubuntu 22.04 AArch64 交叉编译 Docker 镜像构建指南