答案:建议你先学C
像C++,C#以及Java都是基于C的基本语法衍生的;所以你可以认为C是基础。不过当你到达一定境界你会发现语言只是一种工具而已,只不过每种语言的编程思想不同:
C是支持面向过程编程,它的出现是为了取代汇编语言,不过它的可移植性和简洁、强大使它很快流行,至今仍在大型系统开发、游戏开发、嵌入式开发等领域占有很大市场。
C++的出现是为了在C的语言级别支持面向对象,加入了“类”的概念,它是和C语言兼容的(除极少特性)。后来随着发展,C++变成了一门庞大的语言,它同时支持面向过程,基于过程,面向对象和泛型编程,功能可谓最全。不过它的过于庞大使它难以学习。更重要的是,C++在大学里比较流行,很多学过C++的新手自以为掌握了最难懂的语言,写的程序拙劣无比、漏洞百出。以现在情况看,C++的开发效率太低,在很多领域已经被其他快速开发语言取代。
总的看来,C/C++产生较早,注重程序运行的效率,它们的宗旨是“相信程序员”。所以你既可以享受一切尽在掌握中的乐趣,又可能倍受错误的折磨。
对于C++的种种弱点,Sun的专家推出的Java力求弥补。Java的一大宗旨是“防止程序员犯错”(必然的损失是效率),Java程序比C/C++更安全,不会有那么多隐藏的漏洞,而且它是平台无关的,可以在任意支持Java虚拟机的平台运行。Java是网络时代的产物,网络编程的不错选择。
至于C#,是微软模仿Java的作品,是.Net平台的主打语言。相对于Java平台,.net平台胃口更大,它试图把其他语言包容进来。不过平台之争与你我无关,简言之,C#是类Java,它们相互学习,不断改进,都挺不错的。
不过,最重要的一点:学编程不仅仅是学习语言,更重要的是学习编程思想,学习技巧,培养能力。语言只是工具!
我个人认为新手应从C开始,踏踏实实理解面向过程编程,多读源代码,多写程序。然后接触一下面向对象,理解一下为什么要一切抽象化。
PS:永远不要理会那些语言之争,那更多的是他们的信仰之争。只有最好的程序员,没有最好的语言。一路顺风!
从符号学起,之后是基本语法!
上一个:复杂C语言----“hello world”。
下一个:C语言怎么写底层.这是什么情况?