1 loqixh 2018-07-31 13:38:46 +08:00 windows 用什么 mingw vs2017 不更好? |
![]() | 2 youngxu 2018-07-31 13:39:27 +08:00 via Android dev-c++你值得拥有 |
3 wsds OP @loqixh 装了 vs2013,编译是可以编译,但不喜欢的是,vs 运行自己写的代码不在内置控制台输出,而是在 cmd 窗口,不太喜欢这个交互方式,而且觉得初学太这个工具太庞大了 |
![]() | 4 wizardoz 2018-07-31 13:49:59 +08:00 那就先学一下 makefile 嘛 如果不学的话: g++ hello-world.cpp -o hello-world 也可以啊 |
![]() | 5 misaka19000 2018-07-31 13:50:17 +08:00 makefile 还是需要调用 gcc 的,学编程要学会善用搜索 |
![]() | 6 crack105 2018-07-31 13:50:32 +08:00 via Android 用 devc++吧,容易用,对新手友好 |
7 zynlp 2018-07-31 13:54:56 +08:00 via iPhone ![]() 直接回答楼主问题,我是怎么编译的: 1、windows 下 vscode 写代码; 2、windows 写 Makefile ; 3、同步到服务器上 make ; 4、gdb 调试 5、如果有 bug,重复 1 到 4 ; 搞定 |
![]() | 8 easylee 2018-07-31 14:00:25 +08:00 via Android 新手学 C,硬要上 IDE,主推 CODE::BLOCKS。 |
9 VVVVVEX 2018-07-31 14:05:03 +08:00 ![]() 那就不要学了,去学 js 吧 |
![]() | 10 innoink 2018-07-31 14:08:43 +08:00 via Android 首先找个靠谱的书 |
![]() | 11 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 |
![]() | 12 hyyou2010 2018-07-31 14:17:34 +08:00 ![]() 如果初学,必然不会有很多的 C 文件,那么就如同前面某位同学说的,直接编译就行了: g++ hello-world.cpp -o hello-world 等你学到一定程度的时候再学 makefile,会写最简单的 makefile 即可,里面有最简单的依赖关系的 现在没必要花时间在 makefile 上 |
![]() | 13 hyyou2010 2018-07-31 14:18:25 +08:00 另外,推荐安装 VirtualBox 虚拟机,在其中安装 linux,然后在 linux 环境里面学习 C 语言 |
![]() | 14 metorm 2018-07-31 14:21:06 +08:00 via Android 要么就先拿 vs 用着,要么就研究 cmake/make 清晰概念。dev-c++强烈不建议。 |
15 MeteorCat 2018-07-31 14:22:25 +08:00 via Android 网络相关编程,最好告别 mingw,用纯正 linux |
![]() | 16 JerryCha 2018-07-31 14:25:37 +08:00 初学用 Code::Block,带 mingw 版本的。初学玩啥命令行编译哟。 |
![]() | 17 dongxiaozhuo 2018-07-31 14:29:00 +08:00 既然是初学 C,就别被周遭的工具所干扰了视线。Windows 上 devcpp 或者 visual studio 社区版就行。用 IDE 的好处就是 debug、编译一步走。熟悉了用 C 写代码,搞懂了数据结构,周遭的工具使用,阅读一下文档就知道如何用。 初学者别被周围工具的问题,吸引走注意力。 |
![]() | 18 jowuIM 2018-07-31 14:48:23 +08:00 建议认真考虑#16 #17,主要是因为因为 windows 下 C 编程真的挺吃力的,特别是初学者。编程环境的事情有时候真的很复杂,利用 IDE 屏蔽环境的问题,学习语法,数据结构和一个算法什么的更重要。 |
![]() | 19 tao1991123 2018-07-31 14:52:15 +08:00 新手学 C 用 code::blocks 吧 先学 C |
![]() | 20 shijingshijing 2018-07-31 15:10:15 +08:00 via iPhone 新手还是虚拟机+linux 吧,微软自己给 c/c++造了不少轮子,mfc 什么的。最奇葩的是.Net 托管的 c++,语法直接惨不忍睹。 |
21 zhangqx 2018-07-31 15:20:12 +08:00 vscode 不是更好? |
![]() | 22 Tyanboot PRO 要么 VS, 要么 CLION 后者满足你说的在内置控制台输出. 另外 cmd 就是 Windows 的控制台, vs 创建的时候的类型选择控制台程序就是在 cmd 输出的. 另外 2018 年了为什么要装 vs2013? vs2017 社区版了解下? 只要 c++只需要不到 5G. 另外用 devcpp/code::blocks 还不如用 clion. |
![]() | 23 jmc891205 2018-07-31 15:45:45 +08:00 初学用不着 makefile |
24 Howlaind 2018-07-31 16:07:59 +08:00 markfile 是在后来文件太多、依赖关系复杂、编译参数太长,不愿意弄(弄起来也容易出错)的时候用的。初学还没必要用,就编译一个文件,上 markfile 反而麻烦。 当你觉得直接敲 g++命令敲得手酸的时候,再来看看 makefile 吧。 |
![]() | 25 wlgq2 2018-07-31 16:35:41 +08:00 codeblocks IDE 自带 mingw 安装包 100M,还能根据工程生成 makefile。 |
![]() | 26 zhangpeter 2018-07-31 16:42:29 +08:00 dev-c++ +1 |
27 zitengdu 2018-07-31 16:52:20 +08:00 Ubuntu + CMake + Sublime + Shell 学生帐号再加一个 CLion |
![]() | 28 seancheer 2018-07-31 17:52:32 +08:00 makefile 完了还有 cmake,又是一个自动生成 makefile 的工具,你要把你大把的时间花费在工具上么? 学 c 为什么不关注 c 本身,却在这些工具上纠结? |
![]() | 29 tt67wq 2018-07-31 17:58:55 +08:00 makefile 有好些自动生成的工具的,不用自己写的 |
![]() | 30 mrcn 2018-07-31 18:32:53 +08:00 via Android devc++。嫌弃太古老了也可以用 vscode 加上右键运行的那个插件。 |
31 chinawrj 2018-07-31 18:36:28 +08:00 建议 gcc 编译,ide 会让你搞不懂 C |
![]() | 32 suikator 2018-07-31 18:37:52 +08:00 28 楼说的对 把重点放到 C 和 Linux 上面 windows 全是坑 |
![]() | 33 liangzi 2018-07-31 19:09:36 +08:00 via Android 想起了当初我学 C 在 Linux 系统上 然而网上教学几乎都是 Windows 系统 碰到一些头文件还没有 好歹有个 Google 解决问题就靠搜... |
34 ai277014717 2018-07-31 19:11:51 +08:00 vs 省心啊。makefile 用到再说吧。 |
35 slowman 2018-07-31 19:23:12 +08:00 找一本靠谱的书,选择一个工具,慢慢学 别把时间浪费在摆弄各种工具上 |
![]() | 36 psychoo 2018-07-31 19:27:25 +08:00 好像 code::blocks 是最严格的吧……适合初学 |
37 loqixh 2018-07-31 19:30:56 +08:00 @wsds 如果你要用 linux api 把 wsl 打开或者开虚拟机 vs 配置成 ssh 即可 远程编译 远程调试 只要学 c api 用不着 linux 别被上面的骗了 初学者我相信用不着 linux api |
38 Loren 2018-07-31 19:32:30 +08:00 via Android vscode+wsl,你要的都满足 |
![]() | 40 tushankaka 2018-07-31 19:39:23 +08:00 via Android linux,gcc,vim 就可以了 |
![]() | 41 SonicY 2018-07-31 19:45:33 +08:00 via Android 别在 Makefile 上下太多功夫,写到吐,以后可以用 CMake 之类的工具。 |
![]() | 42 kevinhwang 2018-07-31 19:46:43 +08:00 via Android 别深入学 c,浪费时间,了解基本语法和指针写刷算法即可。 c 对计算机底层也没什么大的帮助,反而会陷入底层的深渊,还是从高层应用向下学更好。 尽快学 java,生态非常好,多点看开源项目源码。 |
![]() | 43 mmdsun 2018-07-31 19:55:52 +08:00 via Android 推荐 visual studio 2017 宇宙最强 IDE |
![]() | 44 shijingshijing 2018-07-31 19:58:52 +08:00 @kevinhwang 不同意,底层还是要看的,计算机架构方面 X86 和 ARM 可以作为 CISC 和 RISC 的典型仔细看看,其他类型的 CPU 就算了;操作系统方面重点看一下 Linux 就行了,Windows 不用看。如果想把这两样都玩熟,都需要 C 的基础,否则再往上和高级语言之间就缺了一层,衔接不起来。 |
![]() | 45 young6 2018-07-31 20:07:05 +08:00 via Android makefile 是为了自动编译大型项目。你现在只是写些小 demo 直接 gcc 即可。另外,windows 下个人认为不适合写 c,写 c++比较合适。写 c 还是 linux 方便。 |
![]() | 46 hatsuyuki 2018-07-31 20:29:04 +08:00 要在 Windows 上用 Makefile 1.安装 MinGW-W64 ( https://www.cnblogs.com/findumars/p/8289454.html) 2.在 MinGW-W64 下的 bin 目录找到 mingw32-make.exe ,复制一份,改名为 make 3.根据这份 跟我一起写 Makefile (PDF 重制版) ( https://pan.baidu.com/s/1zWmehuHvcCeyDIzota4Jcg) 写 makefile |
![]() | 47 HarveyDent 2018-07-31 20:31:16 +08:00 初学:用 IDE 或者用 Linux。你为何偏偏要选最蛋疼的 mingw。。。新手千万不要去搞什么 makefile。。。这些工具分分钟让你从入门到放弃。 |
![]() | 48 hatsuyuki 2018-07-31 20:34:27 +08:00 还有推荐在 Windows 平台使用 Cmder 替代系统 cmd |
![]() | 49 bumz 2018-07-31 21:21:13 +08:00 其实吧 装个虚拟机,虚拟机里装个 Ubuntu,就行了 |
![]() | 50 20015jjw 2018-08-01 03:38:09 +08:00 via Android 新手别用 Windows 别用 ide 老老实实开个 Linux/mac 开个 shell 弄个 sublime/atom/vs code 就行 |
51 orc 2018-08-01 09:00:18 +08:00 via iPhone vc6.0 |
![]() | 53 jagger2048 2018-08-01 09:55:56 +08:00 个人看来,新手学 C 最好直接上 IDE ( VS studio,dev c++,codeblock 等),然后专注于 数据结构与算法 这些的入门 [如果不是用来搞单片机的话] ,打好编程功底,不要一开始就折腾环境带偏了,要想清楚你是干啥的。在学有小成开始看开源项目或者自己折腾其他小东西的时候再用到啥学啥, 直接开 linux 虚拟机 上 shell 真是劝退 |
![]() | 54 NCE 2018-08-01 10:00:40 +08:00 真羡慕现在的小孩子。。。还有时间学 C。。。 我上次这么学是 15 年前了,后来发现,这玩意看看语法还行,真要做出东西来怕是胡子都白了。。。 然后转学 C#,一直到现在。 |
55 macha 2018-08-01 11:26:24 +08:00 直接上 IDE,新手别去折腾工具链,要不然折腾半天一句代码没写已经把自己绕晕了。windows 强推 VS2017 社区版。 |
![]() | 56 allgy 2018-08-01 13:40:01 +08:00 c: gcc test.c -o test c++: g++ test.c -o test |