Files
BlogPosts/Collection/YoudaoyunNotes/02C语言/01-C语言概述.md

2.9 KiB
Raw Blame History

一、概述

C 语言是一种通用的、

1. 发展历程

  • 1972 年C 语言诞生于贝尔实验室,作为 UNIX 系统的开发语言。

  • 1989 年ANSI CC89成为首个标准化版本奠定语言基础。

  • 1999 年C99 引入新特性(如布尔类型、变长数组)。

  • 2011 年至今C11、C17 等版本持续完善,保持语言活力。

2. 重要意义

  • 系统级编程UNIX、Linux、Windows 等操作系统核心均用 C 语言编写。

  • 语言桥梁C++、Java、Python 等语言借鉴其语法结构,被称为 “编程的母语”。

  • 性能标杆:代码执行效率接近汇编语言,适合对性能要求极高的场景。

二、C 语言的核心特性

1. 高效性

  • 直接操作内存(通过指针),减少运行时开销。

  • 编译型语言,生成机器码,执行速度快。

2. 灵活性

  • 支持底层操作(如位运算、内存管理)。

  • 可扩展为面向对象(如通过结构体和函数指针实现封装)。

3. 可移植性

  • 遵循标准C的代码可在不同平台如 Windows、Linux、嵌入式系统编译运行。

4. 强大的标准库

  • 输入输出stdio.h如printf、scanf

  • 字符串处理string.h如strcpy、strlen

  • 内存管理stdlib.h如malloc、free

  • 数学运算math.h如sqrt、sin

三、C 语言的应用场景

1. 系统软件

  • 操作系统内核(如 Linux、macOS

  • 驱动程序、文件系统。

2. 嵌入式开发

  • 物联网设备、智能家居。

  • 汽车电子、工业控制。

3. 游戏开发

  • 游戏引擎(如 Unity 的底层)。

  • 高性能游戏逻辑。

4. 高性能应用

  • 数据库系统(如 MySQL

  • 图形处理库(如 OpenGL

四、C 语言的优缺点

1. 优点

  • 执行效率高,适合对性能敏感的场景。

  • 跨平台兼容性好。

  • 学习曲线平缓,适合编程入门。

2. 缺点

  • 手动内存管理如malloc/free易导致内存泄漏。

  • 缺乏高级特性(如垃圾回收、泛型)。

  • 错误处理依赖返回值和全局变量如errno

五、学习资源推荐

  1. 经典教材
  • 《C Primer Plus》入门

  • 《C Programming Language》K&R 原著,进阶)

  • 《Linux图文指南》

  1. 在线教程
  1. 开发环境
  • 编译器GCCLinux/macOS、MinGWWindows

  • IDECLionJetBrains、Code::Blocks、VsCode。

六、怎么学好C语言

  1. 先学习C语言的基础知识打好基础

  2. 多看、多写、多思考、多练习编程

  3. 开始着手写一些简单的项目,如小游戏

  4. 在网上寻找一些大佬的项目进行观摩、学习和积累经验。

只要写不死,就往死里写 ----学好C语言