news 2026/4/16 11:58:29

《21天学通C语言(第7版)》内容整理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
《21天学通C语言(第7版)》内容整理

第1部分 C语言基础

第1课 初识C语言

欢迎学习本课程!本课将是你成为C程序员高手之路的开始。

本课主要内容:

  • 在众多程序设计语言中,为什么C语言是首选
  • 程序开发周期中的步骤
  • 如何编写、编译和运行第1个C程序
  • 编译器和链接器生成的错误消息

1.1 C语言发展简史

  • 起源:1972年由丹尼斯·里奇(Dennis Ritchie)在贝尔电话实验室发明
  • 发明初衷:用于设计UNIX操作系统
  • 标准化:1983年美国国家标准协会(ANSI)制定了ANSI C标准
  • 最新标准:2011年ANSI C11标准(添加了新特性,但旧编译器可能不支持)
  • 名称由来:C语言的前辈是B语言(由肯·汤普逊发明)

1.2 为何要使用C语言

C语言的优势:

  1. 功能强大且灵活

    • 几乎可用于任何领域:操作系统、文字处理、图形、电子表格、编译器开发等
  2. 流行且资源丰富

    • 是众多专业程序员的首选
    • 易于找到编译器和辅助工具
  3. 可移植性强

    • 在一种系统中编写的程序,可轻松移植到其他系统(如Windows到Linux)
    • ANSI标准进一步改善了可移植性
  4. 简洁高效

    • 只包含少量关键字(保留字)
  5. 模块化设计

    • 以函数为单位组织代码,便于复用

C语言与其他语言的关系

  • C++:C的超集,添加了面向对象特性
  • Java:基于C语言发展而来
  • C#:源自C的面向对象语言

注意:学习C语言为学习C++、Java、C#等其他语言奠定了良好基础。


1.3 准备编程

解决问题的一般步骤:

  1. 确定程序的目标
  2. 确定编程方法
  3. 创建程序解决问题
  4. 运行程序查看结果

1.4 程序开发周期

1.4.1 创建源代码
  • 源代码:指导计算机执行特定任务的语句或命令
  • 示例:printf("Hello,Mom!");
1.4.2 使用编辑器
  • 集成开发环境(IDE):包含编辑器、编译器和调试工具
  • 文本格式:必须保存为ASCII/文本格式(非文档格式)
  • 文件命名:C源文件扩展名应为.c
1.4.3 编译源代码
  • 目的:将人类可读的源代码转换为机器可执行的二进制代码
  • 编译器:执行转换的程序
  • 输出:目标文件(扩展名:Windows为.obj,Linux/UNIX为.o

注意:本书基于ANSI C标准,但并非所有编译器都支持最新C11标准。

1.4.4 链接以创建可执行文件
  • 链接器:将目标文件与函数库合并,创建最终可执行程序
  • 库函数:如printf(),包含预编译代码,可直接使用
  • 输出:可执行文件(扩展名通常为.exe

开发流程示意图:

计算机 → 编辑器 → 源代码 → 编译器 → 目标代码 ↓ 链接器 + 库文件 → 可执行文件
1.4.5 完成开发周期

C程序开发四步骤:

  1. 编写源代码(文件扩展名:.c
  2. 编译程序
    • 成功:生成目标文件(.obj.o
    • 失败:报错,需返回步骤1修正
  3. 链接程序
    • 成功:生成可执行文件(.exe
  4. 执行和测试
    • 如果结果不符合预期,返回步骤1修改

注意:编辑-编译-链接-测试是一个循环过程,即使是经验丰富的程序员也需要多次迭代才能完成无错误的程序。


要点总结:

  • C语言是功能强大、可移植的编程语言
  • 程序开发遵循编辑→编译→链接→测试的循环过程
  • 掌握C语言为学习其他现代编程语言奠定基础
  • 熟悉开发工具(编辑器、编译器、链接器)对高效编程至关重要
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 8:34:11

“想买Labubu?门店排队成‘博物馆’,消费者只能靠线上抢”!

近日,泡泡玛特(Pop Mart)在社交媒体和财经媒体上掀起热议——在其实体门店里,热门IP“Labubu”几乎买不到。36氪记者对这一现象进行深度调查,发现背后涉及供应链、渠道策略以及黄牛生态的多重因素。一、门店“买不到”…

作者头像 李华
网站建设 2026/4/16 7:26:37

手撕300kW直驱永磁风电并网】这可能是全网最直观的永磁同步电机仿真教程。咱们直接打开Simulink,从零搭建一套能跑的三相风电系统

300kw直驱永磁同步电机。 Matlab/simulink仿真模型风电并网,仿真波形好,适合学习。 三相。 先上硬货!永磁同步电机的核心参数得配置准确。在Machine Parameters模块里,定子电阻设0.01Ω有点讲究——实际机组铜损大约占额定功率的2…

作者头像 李华
网站建设 2026/4/16 1:01:11

Linly-Talker在婚庆定制视频中的新人形象合成服务

Linly-Talker在婚庆定制视频中的新人形象合成服务 在婚礼现场的聚光灯下,一段由AI生成却“声形俱真”的新郎致辞缓缓播放——那张熟悉的脸庞随着话语微微开合,声音温柔而坚定,仿佛他真的站在那里倾诉爱意。这不是科幻电影,而是今天…

作者头像 李华
网站建设 2026/4/16 7:25:33

速度误差与姿态误差的关系

EKF INS/GPS松组合导航,15状态,地理系采用NED(北东地)北东地坐标系下的惯性导航总是带着某种神秘感。当我们把IMU数据塞进算法时,那些跳动的数值就像在三维空间跳华尔兹。今天咱们聊聊怎么用15个状态的扩展卡尔曼滤波(EKF&#xf…

作者头像 李华
网站建设 2026/4/16 0:03:58

Linly-Talker情感计算能力评测:能否识别用户情绪并回应?

Linly-Talker情感计算能力评测:能否识别用户情绪并回应? 在虚拟主播深夜直播带货、AI客服全天候解答疑问的今天,一个数字人“会不会察言观色”,已经不再是锦上添花的功能,而是决定用户体验真实感的关键门槛。我们早已厌…

作者头像 李华
网站建设 2026/4/15 16:47:33

Linly-Talker如何增强背景音乐下的语音清晰度?

Linly-Talker如何增强背景音乐下的语音清晰度? 在虚拟主播直播间里,背景音乐正播放着轻快的旋律,用户却仍能清晰听到数字人讲解的产品信息;在线教育平台上,学生一边听着舒缓的学习氛围曲,一边准确捕捉老师语…

作者头像 李华