初学 C,被编译搞懵逼了

2018-07-31 13:35:51 +08:00
 wsds
windows 上,下载的 mingw 中的 g++编译的,看别人都是 makefile 编译的,搞不懂
请教一下大家,初学的话,怎么编译自己写的代码?
6993 次点击
所在节点    程序员
56 条回复
loqixh
2018-07-31 13:38:46 +08:00
windows 用什么 mingw
vs2017 不更好?
youngxu
2018-07-31 13:39:27 +08:00
dev-c++你值得拥有
wsds
2018-07-31 13:47:29 +08:00
@loqixh 装了 vs2013,编译是可以编译,但不喜欢的是,vs 运行自己写的代码不在内置控制台输出,而是在 cmd 窗口,不太喜欢这个交互方式,而且觉得初学太这个工具太庞大了
wizardoz
2018-07-31 13:49:59 +08:00
那就先学一下 makefile 嘛
如果不学的话:
g++ hello-world.cpp -o hello-world
也可以啊
misaka19000
2018-07-31 13:50:17 +08:00
makefile 还是需要调用 gcc 的,学编程要学会善用搜索
crack105
2018-07-31 13:50:32 +08:00
用 devc++吧,容易用,对新手友好
zynlp
2018-07-31 13:54:56 +08:00
直接回答楼主问题,我是怎么编译的:
1、windows 下 vscode 写代码;
2、windows 写 Makefile ;
3、同步到服务器上 make ;
4、gdb 调试
5、如果有 bug,重复 1 到 4 ;
搞定
easylee
2018-07-31 14:00:25 +08:00
新手学 C,硬要上 IDE,主推 CODE::BLOCKS。
VVVVVEX
2018-07-31 14:05:03 +08:00
那就不要学了,去学 js 吧
innoink
2018-07-31 14:08:43 +08:00
首先找个靠谱的书
waruqi
2018-07-31 14:09:57 +08:00
可以用 xmake,进入你的代码目录,直接运行:xmake run 就好了,会自动检测你的源码就够,给你生成一个类似 makefile 的 xmake.lua 文件,然后自动编译和运行。

配合 vscode/intellij-idea/sublime 效果更佳,都有相关 xmake 插件提供。

https://github.com/tboox/xmake
hyyou2010
2018-07-31 14:17:34 +08:00
如果初学,必然不会有很多的 C 文件,那么就如同前面某位同学说的,直接编译就行了:
g++ hello-world.cpp -o hello-world

等你学到一定程度的时候再学 makefile,会写最简单的 makefile 即可,里面有最简单的依赖关系的
现在没必要花时间在 makefile 上
hyyou2010
2018-07-31 14:18:25 +08:00
另外,推荐安装 VirtualBox 虚拟机,在其中安装 linux,然后在 linux 环境里面学习 C 语言
metorm
2018-07-31 14:21:06 +08:00
要么就先拿 vs 用着,要么就研究 cmake/make 清晰概念。dev-c++强烈不建议。
MeteorCat
2018-07-31 14:22:25 +08:00
网络相关编程,最好告别 mingw,用纯正 linux
JerryCha
2018-07-31 14:25:37 +08:00
初学用 Code::Block,带 mingw 版本的。初学玩啥命令行编译哟。
dongxiaozhuo
2018-07-31 14:29:00 +08:00
既然是初学 C,就别被周遭的工具所干扰了视线。Windows 上 devcpp 或者 visual studio 社区版就行。用 IDE 的好处就是 debug、编译一步走。熟悉了用 C 写代码,搞懂了数据结构,周遭的工具使用,阅读一下文档就知道如何用。

初学者别被周围工具的问题,吸引走注意力。
jowuIM
2018-07-31 14:48:23 +08:00
建议认真考虑#16 #17,主要是因为因为 windows 下 C 编程真的挺吃力的,特别是初学者。编程环境的事情有时候真的很复杂,利用 IDE 屏蔽环境的问题,学习语法,数据结构和一个算法什么的更重要。
tao1991123
2018-07-31 14:52:15 +08:00
新手学 C 用 code::blocks 吧 先学 C
shijingshijing
2018-07-31 15:10:15 +08:00
新手还是虚拟机+linux 吧,微软自己给 c/c++造了不少轮子,mfc 什么的。最奇葩的是.Net 托管的 c++,语法直接惨不忍睹。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/475627

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX