c、c++、c#

简述一下三种语言的区别

c有对象但没有类的函数语言,旨在创建操作系统,与硬件交互,语法相对简单(除了指针
由于其本质,编写会相对困难,需要自己写库和功能
如果想编译系统,c是最佳选择

c++快速且强大,面向对象编程且有强力支持,c++相当于c的加强版版
语法相对复杂,需要记住的部分很多,学习成本很高,不推荐初学者学习
但使用并不很难,比c功能更多,通常用于游戏开发,Gui或浏览器

c#在2000年由微软创建,比c和c++更加高阶相应的运行速度更慢,面向对象让web开发更便捷
基本上是复制的Java,语法类似Java,继承了C和C++的许多东西,但和两者基本上已不一样了
学习曲线中等,简单易用,因为库非常丰富,常用于web开发,win应用和游戏开发

总结,c编写底层应用,c++编写更强的底层应用,但恐怕要牺牲自我
c#基本是java的替代品,不过微软的尿性大家都懂

总结:
C++是C语言的升级版 。c是c++的子集,c是面向过程的,c++是面向对象的,C++完全向C兼容,C程序几乎不用修改即可在C++的编译器上运行

继承关系是C->C++->C#

ps:
面向对象主要是说,在系统设计和实现上用的思想,面向对象的思想的运用,就是先从系统需求中确定类,然后按类实例化对象,对象之间的通信就实现了系统的功能。
面向过程,即系统的实现是分过很多按流程或工序设计的不同功能(函数)来实现,就是先干什么,后干什么,主要是靠函数的调用,因为面向过程没有对象,所以这些函数不属于任何对象,没有封装、继承等的灵活运用,系统一旦庞大,其设计和实现的复杂性和可控性跟面向对象不是一个数量级的。)