随着第一代计算机诞生初期,针对计算机的编程就开始了,最一开始用机器语言或汇编语言编写程序;程序员
为了知足更多的需求:第一种高级语言FORTRAN诞生于1954年;数据库
再而后因为门槛太高为了简化:BASIC语言孕育而生(1964)是由FORTRAN语言的简化而成的是为初学者设计的小型高级语言;编程
C语言是1972年由美国贝尔实验室的 D.M.Ritchie 研制成功的。它是为计算机专业人员设计的;浏览器
大多数系统软件和许多应用软件都是用C语言编写的。随着软件规模的增大,用C语言编写程序渐渐吃力了,因而便创造出了C++语言。网络
每一次的变革都是至关于一种巨大的进步,至关了一个更加细致的方向获得了发展。框架
C++是由 AT&T Bell实验室 于20世纪80年代初在C语言的基础上成功开发出来的。C++保留了C语言原有的全部优势,并增长了面向对象的机制。编程语言
C++是由C语言发展而来的,与C兼容。用C语言写的程序基本上能够不加修改地用于C++。从C++的名字能够看出它是C的超集。C++既可用于面向过程的程序设计,又可用于面向对象的程序设计,是一种功能强大的混合型程序设计语言。工具
备注:C++不是纯面向对象语言。学习
(1) 在原来面向过程机制的基础上,对C语言的功能作了不少扩充。spa
(2) 增长了面向对象的机制。
面向对象程序设计,是针对开发较大规模的程序而提出来的,目的是提升软件开发的效率。不要把面向对象和面向过程对立起来,面向对象和面向过程不是矛盾的,而是各有用途互为补充的。
因此,通俗来说,你们在学习的过程当中不要把C语言和C++作为两门独立或者对立的语言来学习,自己他们就能够当作是一门语言,任何一款支持C++的编译工具都支持C语言。C++就是C语言的超集,包括了全部C语言的特性,因此你把C++学会了,C语言天然也就会了。若是你以前学过C语言,那么再学习下C++的面向对象思想,那么二者你也就都会了。
给你们举个例子:
学习编程的人针对谭浩强这个名字应该几乎都听过。谭浩强老师的C语言/C++语言的编程书籍能够说是国内不少大学的标杆教材了。我读大学时候的C语言教材就是谭浩强老师的。
他有一本《C语言程序设计》专门讲解C语言的,还有一本《C++程序设计》专门讲解C++的,书挺厚的,包括了C语言的部分。还有一本是《C++面向对象程序设计》是专门讲解C++的,因此能够这么说:《C语言程序设计》+《C++面向对象程序设计》=《C++程序设计》,这也充分体现了C语言和C++的关系。
说到谭浩强老师我这里要说一说了。国内不少读者对谭浩强老师褒贬不一。但我我的确实是比较推崇谭浩强老师的书,大学时候就是用他的书籍入门的。有不少人说他的书籍有错误,讲解的很差。我要说这个错误不怪他,《C语言程序设计》初版刚出来的时候,系统仍是Win98,16位的,因此相关一些类型占用的字节数等等,跟咱们如今使用的x86或者x64根本不同,因此才出现了网友口中的错误。不过《C语言程序设计》、《C++程序设计》 等谭浩强老师的书籍后续都有新版本,因此你们也不要总拿初版或者老版原本说事儿。
C语言:操做系统底层、系统驱动、单片机、嵌入式方面 等等;
C++:网络游戏开发、音视频技术、Socket网络通讯,另外,苹果/谷歌/微软 等大型软硬件公司的系统或者软件上面都支持C/C++语言的集成开发。
你经常使用的软件大多数都是C++写的,例如:Office软件:MS Office,WPS Office,OpenOffice/LibreOffice,你所用的Windows也用了大量的C++,你说你在用C#和SQL,那我告诉你你用的 VS IDE 核心部分是C++写的,你用的C#,C# 的.Net执行框架也是C++写的,你用的Sql数据库,是Sql Server吧?很不幸,Sql Server也是cpp写的、你上网页在用浏览器吗?很不幸,浏览器内核都是C++写的,界面大多数浏览器界面也是C++写的,你聊天用的 QQ、YY、Skype 等也是C++写的。这些都是你绝对有在用的,至于其余,还有不少,杀毒软件、PhotoShop、Maya,N多行业软件,几乎全部的端游 等等,都是C++写的。你问我C++能作什么实际的东西,我告诉你什么也作不了,你信吗?
C++ 的几个常见的发展方向:客户端,游戏,服务端,嵌入式,移动端(移动只要是跨平台的移动端用C++写通用部分,GUI能够用平台特性,也能够用C++的跨平台框架)
针对界面UI方面C++的选择也是不少的,其实C++仍是擅长“内功”的方面。若是你想带个GUI界面的话,也有不少相似Qt之类的框架和界面库可使用,网上有不少,并且不少都跨平台,还开源,不论是 Windows,仍是Mac,仍是Linux,仍是移动端平台,通吃的。自己C/C++就是跨平台的。
另外,说点你们感兴趣的,什么远程控制软件,什么木马,什么外挂等等,能够说95%以上都是用C/C++来写的。
难道这么多的用途还不值得你们来好好学学C/C++吗?
另外,闻道有前后、术业有专攻,C++虽然功能很强大,几乎什么都能作,但有的地方也是不适合,不是不能作而是不适合。好比网页开发,C++也能作,可是仍是建议使用Java-Web或者PHP之类的语言来作,毕竟他们就是为了Web开发而生的。
最后,若是你也想成为程序员,想要快速掌握编程,赶忙加入学习企鹅圈子!
里面有资深专业软件开发工程师,在线解答你的全部疑惑~编程语言入门“so easy”
编程学习书籍:
编程学习视频: