鱼C论坛

 找回密码
 立即注册
查看: 8425|回复: 26

[技术交流] vscode C语言环境搭建教程

[复制链接]
发表于 2021-1-9 13:08:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 Ⅲ只小猪 于 2021-1-17 09:55 编辑

小甲鱼说过:c语言在Linux下有更广阔的天地。但是这对一些想在Windows下编程的伙伴们就不太友好了
dev-c++虽然很方便,但是却很丑,同时功能也比较简陋、难以配置,不是很方便。
而code::block全是英文,而且是一款IDE,初学者使用比较麻烦,而这两者的折中点vscode,就是很好的选择。
但是vscode的c语言环境需要自己手动配置,鉴于论坛上还没有人做过这样的教程,那就让我身先士卒吧
首先,进入这个网址https://sourceforge.net/projects/mingw-w64/files/下载mingw-w64,往下翻到最下面,我们可以看到这个。
Snipaste_2021-01-03_21-52-36.png
下面以i686-win32-dwarf演示
Snipaste_2021-01-09_11-45-35.png
下载完后是一个压缩包
Snipaste_2021-01-09_11-49-20.png
解压后长这样
Snipaste_2021-01-09_11-51-36.png
我这里为了方便就直接放在C盘了,大家也可以放在别的地方,但是不要有中文路径
接下来就是修改环境变量了。
右击桌面上的此电脑,选择“属性”,然后单击“高级系统设置”,点击“环境变量”,然后双击“path”环境变量(窗口上下会分别有两个path,点哪个都行)
然后点击新建,输入mingw32文件夹的路径就行了,但是注意,后面要加上\bin,像这样
Snipaste_2021-01-09_11-58-29.png
而且注意,符号必须是全英文的。如果实在不会,可以点击右边的浏览进行添加(要定位到mingw32里的bin文件夹)
Snipaste_2021-01-09_12-17-50.png
这是在cmd里输入gcc出现以下画面就说明gcc已经安装成功啦 (写到这累死我了)
接下来就是配置vscode了
打开vscode,在扩展商店中搜索C,安装C\C++扩展
Snipaste_2021-01-09_12-22-38.png
然后随便新建一个英文路径的文件夹,一定要是英文!!!在含中文的路径里C源文件是无法调试的,我这里新建了一个project文件夹
然后创建HelloWorld.c源文件
Snipaste_2021-01-09_12-25-34.png
随便打上一段代码,然后选择菜单栏上的Terminal(终端),选择Configure Default Build Task(配置任务),默认会显示gcc.exe,直接点击就好了
Snipaste_2021-01-09_12-31-59.png
这是会看到左边的出现了一个名为.vscode的文件夹,里面有tasks.json配置文件,不要动它。
想必大家都知道快要编译文件了,Let's goooooooooooo!!!!!
选择菜单栏上的Terminal(终端),点击Run Build Task(运行生成任务),选择gcc.exe,就可以看见文件被编译好,左边出现HelloWorld.exe的可执行文件了
还没完呢,还有调试
选择菜单栏上的Run(运行),点击Add Configuration...(添加配置),点击C++(GDB/LLDB),在弹出的列表中选择gcc.exe。就会开始调试了。

但前提当前文件夹和文件的路径是全英文的!!!!
但前提当前文件夹和文件的路径是全英文的!!!!
但前提当前文件夹和文件的路径是全英文的!!!!否则无法调试成功

遗憾:因为我还只是鱼油Ⅰ,上传的图片达到了了限制,所以一些重要步骤没有图片,而且毕竟是第一次写攻略,不当之处还请广大鱼油指出,但主要还是因为我菜啊
所以为了产出更好的攻略,也希望鱼油们多多评分啊 ,这样我才能上传更多的图片、解锁更多的权限、制作更好的攻略啊

结尾补充:1.文件下载太慢的朋友可以使用迅雷下载,或者分享链接:https://pan.baidu.com/s/1RKzJNP27J1N70accEElO3A链接,提取码:1234
                2.有一些扩展内容或者没有说清楚的内容我可能会新开一个主题
                3.由于特殊原因,只会在周五,周六,周日上午和节假日将一些内容修改完善和回答鱼油们提出的问题(2021年1月17日上午9:54补充),请见谅
                4..待补充。。。

评分

参与人数 6荣誉 +11 鱼币 +15 贡献 +9 收起 理由
天马流星拳 + 5 + 5 + 3 感谢楼主无私奉献!
minamikotori + 5 无条件支持楼主!
aaron.yang + 1
liaozuhen + 1 快升鱼友II吧
xxm8023 + 2 + 2 + 2 感谢楼主无私奉献!
Daniel_Zhang + 3 + 3 + 3 感谢楼主无私奉献!

查看全部评分

本帖被以下淘专辑推荐:

  • · 百淘|主题: 11, 订阅: 0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-1-15 18:18:14 | 显示全部楼层
本帖最后由 Ⅲ只小猪 于 2021-1-26 23:00 编辑

结尾补充移到这里来啦!
扩展内容:1.《MinGW、MinGW-w64与MSVC之间的区别》https://fishc.com.cn/thread-189398-1-1.html
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-16 22:07:17 | 显示全部楼层
非常感谢找了好久都没找到
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-16 22:39:36 | 显示全部楼层
有macOS版本的吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-16 22:40:18 | 显示全部楼层
我现在macOS就是用VSC敲完去终端里面编译,不知道怎么在VSC上编译
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-1-17 07:55:03 | 显示全部楼层
Colan_CN 发表于 2021-1-16 22:40
我现在macOS就是用VSC敲完去终端里面编译,不知道怎么在VSC上编译

啊这,我没有macOS,不过我会去找一些资料的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-1-17 08:16:09 | 显示全部楼层
Colan_CN 发表于 2021-1-16 22:39
有macOS版本的吗?

终端是指macOS自带的终端吗?
在vsc上编译实质上也是在终端编译,只不过是vsc里自带的终端,就是下方的那个大框,点击terminal(终端),然后输入编译的命令就可以了。

如果你要一键编译,在macOS上配置默认生成任务可能比较麻烦,你可以下载一个名叫code runner的扩展,然后到设置里搜索run in terminal,找到code runner:run in terminal 这一项打上勾就行了。
然后vs code右上角会出现一个小三角,点击它就能一键编译了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-19 15:12:35 | 显示全部楼层
牛人啊,好人啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-22 21:27:44 | 显示全部楼层
楼主请问这是怎么回事 我是英文路径啊
11.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-4-23 17:40:39 | 显示全部楼层
minamikotori 发表于 2021-4-22 21:27
楼主请问这是怎么回事 我是英文路径啊

你是在编译吗,编译是不需要路径全是英文的,下面显示生成已完成,如果你编译的是collect2.c文件,左边应该会有一个collect2.exe文件,至于报告错误的原因我也不是很清楚。你可以先确认一下你有没有修改tasks.json的内容,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-23 20:30:44 | 显示全部楼层
Ⅲ只小猪 发表于 2021-4-23 17:40
你是在编译吗,编译是不需要路径全是英文的,下面显示生成已完成,如果你编译的是collect2.c文件,左边应 ...

就是编译出问题了 没生成exe
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-23 20:31:34 | 显示全部楼层
Ⅲ只小猪 发表于 2021-4-23 17:40
你是在编译吗,编译是不需要路径全是英文的,下面显示生成已完成,如果你编译的是collect2.c文件,左边应 ...

taskjson没动过  我按楼主的步骤来的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-4-24 06:50:03 | 显示全部楼层
minamikotori 发表于 2021-4-23 20:31
taskjson没动过  我按楼主的步骤来的

你可以发一下源文件吗, 我在我这里看一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-24 15:00:21 | 显示全部楼层
Ⅲ只小猪 发表于 2021-4-24 06:50
你可以发一下源文件吗, 我在我这里看一下

源文件指taskjson嘛?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-24 15:02:59 | 显示全部楼层
Ⅲ只小猪 发表于 2021-4-24 06:50
你可以发一下源文件吗, 我在我这里看一下

tasks.zip

453 Bytes, 下载次数: 4

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-4-24 21:29:46 | 显示全部楼层

好像确实是tasks.json出问题了, 我修改了一下, 你拿过去覆盖一下看看有没有用. tasks.zip (462 Bytes, 下载次数: 2)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-26 19:35:26 | 显示全部楼层
Ⅲ只小猪 发表于 2021-4-24 21:29
好像确实是tasks.json出问题了, 我修改了一下, 你拿过去覆盖一下看看有没有用.

我在.c源文件的路径下建立了个bin文件夹就解决问题了exe文件会自动生成在bin文件内
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-30 10:35:02 | 显示全部楼层
楼主还想问问如何修改语言标准 我在task.json.修改成c11,c99,c89  使用变长数组都能过编译
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-4-30 17:16:45 | 显示全部楼层
minamikotori 发表于 2021-4-30 10:35
楼主还想问问如何修改语言标准 我在task.json.修改成c11,c99,c89  使用变长数组都能过编译

这就触及到知识盲区了,可以去百度一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-1 23:15:58 | 显示全部楼层
想问答主,编译出现红色字体怎么办?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-23 16:56

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表