1. C 介绍
C 官网:https://isocpp.org/
cppreference:http://cppreference.com/
cplusplus:https://cplusplus.com/
官方语言
C
是一种通用的编程语言,具有高效和强大的特性,适用于开发各种类型的软件和系统。它是 C 语言的一个超集(即任何合法的 C 程序都是合法的 C 程序),可以使用 C 语言的所有特性和库,同时也引入了许多新的特性,例如类、继承、多态等面向对象编程的概念,以及泛型编程、异常处理、STL 等高级特性。
与 C 语言相比,C 更适合开发大型项目和复杂的系统。它具有严格的类型检查和内存管理,能够提高程序的可靠性和安全性。同时,C 也具备高效和灵活性的优势,支持直接操作底层硬件和编写高性能代码。这些优点使得 C 成为广泛使用的编程语言,被应用于各个领域,如操作系统、嵌入式、数据库、游戏开发、音视频传输、图像处理、金融和科学计算等。
除了标准 C 语言的基础特性外,C 标准库(STL
)也提供了丰富的数据结构和算法库,可用于开发各种类型的应用程序。此外,C 还有许多扩展库和框架,如 Boost
、Qt
、OpenCV
等,可以扩展其功能和应用范围。
组成
- 核心语法:编程语言通用模块,如输入输出、常量变量、数据类型等
- 标准库:库中提供了大量函数接口,可用于操作字符串、文件等
- 标准模板库STL:提供了许多数据类型操作的函数接口
特性
C 完全支持面向对象的程序设计,包括面向对象开发的四大特性:
- 封装:用类class将属性和方法组合在一起,对外隐藏细节
- 继承:子类可以继承父类的属性和方法,并可扩展与修改
- 多态:同一种操作作用于不同的对象,可以有不同的解释和实现
- 抽象:从类的实例中提取公共特征,形成抽象类或接口,便于复用
其他:
内功四大件:数据结构与算法、计算机网络、操作系统、设计模式
应用实践:Windows API、Linux API、网络通信、多线程、数据库、GUI、OpenCV、OpenGL等
程序员学习路线:函数式编程、面向对象编程、泛型编程、STL编程、数据结构与算法、网络编程、多线程与并发、操作系统编程和设计模式等,无论哪种编程语言,在学习的同时需要不断实践,有条件的话跟着项目学是最好的。
在线书籍: C Primer Plus C 程序设计语言 STL Boost Asio 数据结构与算法 数据结构与算法2 代码随想录 并发 ModernCpp EffectiveCpp 重构 GoogleStyle