可以说,不管是学C,还是C++时间比较久的,基本上没有人只用过一种编译器。学得好不好,与接触的编译器的多少无关。因为,学编程的目的,不是如何学习各种编译器的使用。而是,如何理解程序。 有人把集成开发环境(IDE)与编译器混为一谈,我也只能哈哈了,不作过多解释。因为,几句话也解释不了。 至于喜欢用命令行,我把它称为复古,没啥高大上。20年多年前,流行的是微软最早开发的操作系统,就是 dos 操作系统,只能使用命令行操作。即使在 windows 10 也内嵌了 dos 系统,控制台程序弹出的界面,就是dos界面。声明一下,我不是说命令行无用,偶尔我也会用到,但不常用。但是,绝大多数人更喜欢windows 这种图形化界面,而不喜欢 dos 这种操作系统界面吧? 不管是初学C/C++,还是长期玩C/C++,我认为,只需 Visual Studio 就足够了。Visual Studio 顾名思义,就是可视化集成开发环境,也就是,所见即所得的集成开发环境。 所见即所得?什么鬼?其实,我之前用了几百天的 Visual Studio,也搞不明白是啥意思。莫非是写 VB,Delphi 之类的程序吗?因为,我当时学编程时,流行 VB 和 Delphi 这些编程语言。 直到学数据结构时,怎么也搞不懂链式结构中,数据之间的关系。然后,一位学长问我,会用 VS 么?当然会!我理直气壮地说。 问题是,他问的不是创建项目,编译,链接,运行,这些基础步骤。而是如何调试程序。下断调试,我当时也是知道的,但平常大多以 printf 逐步输出数据,来查看中间过程的对与错。因为,当时我嫌调试太麻烦,效率太低。说实话,以我后来的经历,看当时的我,压根就不懂何为调试。当然,我现在也不敢说,我很懂调试。 比较知名的调试工具:OD(动态调试),IDA(静态调试),Windbg(内核调试)。VS是用户态调试工具,且只能是,有受支持的源码时,才可以调试。 说到调试,就不得不说 intel 汇编。国内学校的教材,几乎是 8086 汇编,也就是16位的 intel 汇编,32/64位汇编资料比较少见。简短地说,用 VS 学习或使用32/64位汇编,事半功倍。因为,同样可以做到,所见即所得。 VS自带的官方帮助文档,通常也是在 windows 上开发必备的。这种帮助文档,并不单纯是VS的使用指南,包括很多常见的编程语言参考,而且还有很多相关的示例。 其实,我说的只是 VS 中,一小部分功能。最让我满意的,就是VS的帮助文档,和强大的调试能力