知方号

知方号

C 语言入门手册:几小时内就能学会的 C 语言基础

本手册遵循二八定律。你将在 20% 的时间内学习 80% 的 C 编程语言。

这种方式将会让你对这门语言有一个全面的认识。

本手册并不会尝试覆盖与 C 有关的一切。它只会关注这门语言的核心部分,尽量将更加复杂的主题简单化。

提示:你可以从这里获得这本手册的 PDF 或 ePub 版本。

尽情享受吧!

目录C 语言简介变量与类型常量运算符条件语句循环数组字符串指针函数输入与输出变量作用域静态变量全局变量类型定义枚举类型结构体命令行参数头文件预处理器结语C 语言简介

C 可能是最广为人知的编程语言。它被全世界的计算机科学课程中用作参考语言,除了 Python 与 Java,它可能是人们在学校学得最多得编程语言。

我记得它是我在 Pascal 之后的第二门编程语言。

学生们用 C 来学习编程,但它的作用远不止这一点。它不是一门学术型语言。它不是最简单的语言,因为 C 是一门非常底层的编程语言。

今天,C 在嵌入式设备中广泛使用,它驱动着绝大多数用 Linux 搭建的因特网服务器。Linux 内核是用 C 写的,这也意味着 C 驱动着所有安卓设备的内核。可以这么说,此时此刻,整个世界的一大部分就是由 C 代码运行的,令人惊叹。

在诞生之初,C 被认为是一门高级语言,因为它可以在不同机器之间移植。如今,我们或多或少都认为在 Mac 或 Windows 或 Linux 运行一个程序(可能使用 Node.js 或 Python)是理所当然的。

在以前,完全不是这样的。C 带来了一门易于实现的语言,它的编译器可以很容易地被移植到不同的机器上。

我说下译器:C 是一门编译型语言,就像 Go、Java、Swift 或 Rust 一样。其它流行的语言,比如 Python、Ruby 或 JavaScript 都是解释型语言。编译型语言与解释型语言的差别是不变的:编译型语言生成的是可直接执行和分发的二进制文件。

C 不支持垃圾收集(garbage collection),这意味着我们必须自己管理内存。管理内存是一项复杂的任务,需要十分小心才能预防缺陷,但 C 也因此成为了嵌入式设备(例如 Arduino)编程的理想语言。

C 并不会隐藏下层机器的复杂性和能力。一旦知道你能做什么,你就能拥有巨大的能力。

现在,我想介绍第一个 C 程序,我们将会管它叫“Hello, World”。

hello.c

#include int main(void) { printf("Hello, World!");}

让我们描述一下这段程序源代码:我们首先导入了 stdio 库(stdio 表示的是标准输入输出库(standard input-output library))。

这个库允许我们访问输入/输出函数。

C 是一门内核非常小的语言,任何内核以外的部分都以库的形式提供。其中一些库由普通编程人员构建并供他人使用。另一些库被内置在编译器中,比如 stdio 等。

stdio 库提供了 prinf() 函数。

这个函数被包裹在 main() 函数中,main() 函数是所有 C 程序的入口。

但是,究竟什么是函数呢?

函数(function)是一个例程,它接收一个或多个参数并返回一个值。

在 main() 的例子中,函数没有参数,返回一个整数。我们使用 void 关键字标识该参数,使用 int 关键字标识返回值。

函数有一个由花括号包裹的函数体,函数需要进行的所有操作的代码都在函数体内。

如你所见,printf() 函数的写法稍有不同。它没有定义返回值,并且我们给它传入了一个用双引号包裹的字符串。我们并没有

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至lizi9903@foxmail.com举报,一经查实,本站将立刻删除。