Learning Path
浏览 C 语言 相关教程与章节。
主流编程语言、数据结构、设计模式、正则与基础算法。
教程
428
C 标准库 - <stdio.h> 简介 stdio .h 头文件定义了三个变量类型、一些宏和各种函数来执行输入和输出。 <stdio.h> 是 C 标准库中的一个头文件,定义了处理文件和标准输入/输出流的各种函数和类型。 库变量 下面是头文件 stdio.h 中定义的变量类型: 序号变量 & 描述 1size_t 这是无符号整数类型,它是 sizeof 关键字..
C 标准库 - <stdlib.h> 简介 stdlib .h 头文件定义了四个变量类型、一些宏和各种通用工具函数。 <stdlib.h> 是 C 标准库中的一个头文件,提供了许多通用工具函数,包括内存分配、进程控制、排序和搜索、以及字符串转换等。 库变量 下面是头文件 stdlib.h 中定义的变量类型: 序号变量 & 描述 1size_t 这是无符号整数类型..
C 标准库 - <string.h> 简介 string .h 头文件定义了一个变量类型、一个宏和各种操作字符数组的函数。 <string.h> 是 C 标准库中的一个头文件,提供了一组用于处理字符串和内存块的函数。这些函数涵盖了字符串复制、连接、比较、搜索和内存操作等。 库变量 下面是头文件 string.h 中定义的变量类型: 序号变量 & 描述 1size..
C 标准库 <tgmath.h> <tgmath.h> 是 C 标准库中的一个头文件,提供了类型泛型数学函数(Type-Generic Math Functions)。<tgmath.h> 库在 C99 标准中引入,允许开发者使用统一的函数名来调用不同类型的数学函数(如 float、double 和 long double),而无需显式指定函数的具体类..
C 标准库 - <time.h> 简介 time.h 头文件定义了四个变量类型、两个宏和各种操作日期和时间的函数。 <time.h> 是 C 标准库中的一个头文件,提供了处理和操作日期和时间的函数和类型。这个头文件中的函数用于获取当前时间、设置时间、格式化时间和计算时间差等。 常量与宏常量/宏说明CLOCKS_PER_SEC每秒的时钟周期数。NULL空指针常量。TIME_UTC表..
C 标准库 - 参考手册 以下是 C 标准库头文件及其功能简介的详细列表: C 语言是一种通用的、面向过程式的计算机程序设计语言。1972 年,为了移植与开发 UNIX 操作系统,丹尼斯·里奇在贝尔电话实验室设计开发了 C 语言。 C 语言是一种广泛使用的计算机语言,它与 Java 编程语言一样普及,二者在现代软件程序员之间都得到广泛使用。 C 标准库(C Standard Library)包含了一组头文件,这些头文件提供了许多函数..
C 语言静态数组与动态数组 C 数组 在 C 语言中,有两种类型的数组: 静态数组:编译时分配内存,大小固定。动态数组:运行时手动分配内存,大小可变。 静态数组的生命周期与作用域相关,而动态数组的生命周期由程序员控制。 在使用动态数组时,需要注意合理地分配和释放内存,以避免内存泄漏和访问无效内存的问题。 静态数组 静态数组是指在编译时确定大小的数组,其大小在程序运行期间不能改变。 在 C 语言中,静态数组的内存分配在栈区,通常使..
C 存储类 存储类定义 C 程序中变量/函数的存储位置、生命周期和作用域。 这些说明符放置在它们所修饰的类型之前。下面列出 C 程序中可用的存储类: auto register static extern auto 存储类 auto 存储类是所有局部变量默认的存储类。 定义在函数中的变量默认为 auto 存储类,这意味着它们在函数开始时被创建,在函数结束时被销毁。 { int mount; auto int m..
C 字符串 在 C 语言中,字符串实际上是使用空字符 \0 结尾的一维字符数组。因此,\0 是用于标记字符串的结束。 空字符(Null character)又称结束符,缩写 NUL,是一个数值为 0 的控制字符,\0 是转义字符,意思是告诉编译器,这不是字符 0,而是空字符。 下面的声明和初始化创建了一个 RUNOOB 字符串。由于在数组的末尾存储了空字符 \0,所以字符数组的大小比单词 RUNOOB 的字符数多一个。 char s..
C 结构体 C 数组允许定义可存储相同类型数据项的变量,结构是 C 编程中另一种用户自定义的可用的数据类型,它允许您存储不同类型的数据项。 结构体中的数据成员可以是基本数据类型(如 int、float、char 等),也可以是其他结构体类型、指针类型等。 结构用于表示一条记录,假设您想要跟踪图书馆中书本的动态,您可能需要跟踪每本书的下列属性: Title Author Subject Book ID 定义结构 结构体定义由关..
C switch 语句 C 判断 switch 语句是一种有限制的控制流语句,它用于根据表达式的值执行不同的代码块。 一个 switch 语句允许测试一个变量等于多个值时的情况,每个值称为一个 case,且被测试的变量会对每个 switch case 进行检查。 语法 C 语言中 switch 语句的语法: [mycode3 type='cpp'] switch(expression){ cas..
C 语言教程 C 语言是一种通用的、面向过程式的计算机程序设计语言。1972 年,为了移植与开发 UNIX 操作系统,丹尼斯·里奇在贝尔电话实验室设计开发了 C 语言。 C 语言是一种广泛使用的计算机语言,它与 Java 编程语言一样普及,二者在现代软件程序员之间都得到广泛使用。 当前最新的 C 语言标准为 C18 ,在它之前的 C 语言标准有 C17、C11...C99 等。 现在开始学习 C 编程! C 在线工具 谁适合阅..
C 强制类型转换 强制类型转换是把变量从一种类型转换为另一种数据类型。例如,如果您想存储一个 long 类型的值到一个简单的整型中,您需要把 long 类型强制转换为 int 类型。您可以使用强制类型转换运算符来把值显式地从一种类型转换为另一种类型,如下所示: (type_name) expression 请看下面的实例,使用强制类型转换运算符把一个整数变量除以另一个整数变量,得到一个浮点数: 实例 [mycode3 type..
C typedef C 语言提供了 typedef 关键字,您可以使用它来为类型取一个新的名字。下面的实例为单字节数字定义了一个术语 BYTE: typedef unsigned char BYTE; 在这个类型定义之后,标识符 BYTE 可作为类型 unsigned char 的缩写,例如: BYTE b1, b2; 按照惯例,定义时会大写字母,以便提醒用户类型名称是一个象征性的缩写,但您也可以使用小写字母,如下: ty..
C 共用体 共用体是一种特殊的数据类型,允许您在相同的内存位置存储不同的数据类型。您可以定义一个带有多成员的共用体,但是任何时候只能有一个成员带有值。共用体提供了一种使用相同的内存位置的有效方式。 定义共用体 为了定义共用体,您必须使用 union 语句,方式与定义结构类似。union 语句定义了一个新的数据类型,带有多个成员。union 语句的格式如下: [mycode3 type='cpp'] unio..
C 可变参数 有时,您可能会碰到这样的情况,您希望函数带有可变数量的参数,而不是预定义数量的参数。 C 语言为这种情况提供了一个解决方案,它允许您定义一个函数,能根据具体的需求接受可变数量的参数。 声明方式为: int func_name(int arg1, ...); 其中,省略号 ... 表示可变参数列表。 下面的实例演示了这种函数的使用: [mycode3 type='cpp'] int func(int..
C 变量 变量其实只不过是程序可操作的存储区的名称。C 中每个变量都有特定的类型,类型决定了变量存储的大小和布局,该范围内的值都可以存储在内存中,运算符可应用于变量上。 变量的名称可以由字母、数字和下划线字符组成。它必须以字母或下划线开头。大写字母和小写字母是不同的,因为 C 是大小写敏感的。基于前一章讲解的基本类型,有以下几种基本的变量类型: 类型描述 char通常是一个字节(八位), 这是一个整数类型。 int整型,4 个字节..
C VScode 在上一章节中我们已经介绍了 C 基本概念及实例,本章节我们将介绍 C 代码的编辑器 -- VScode。 VSCode(全称:Visual Studio Code)是一款由微软开发且跨平台的免费源代码编辑器,VSCode 开发环境非常简单易用。 VSCode 支持 C/C++ 是由微软提供的 Visual Studio Code 的一个扩展,它使得在 Windows、Linux 和 macOS 上进行跨平台的 C 和 ..
C while 循环 C 循环 只要给定的条件为真,C 语言中的 while 循环语句会重复执行一个目标语句。 语法 C 语言中 while 循环的语法: while(condition) { statement(s); } 在这里,statement(s) 可以是一个单独的语句,也可以是几个语句组成的代码块。condition 可以是任意的表达式,当为任意非零值时都为 true。当条件为 true 时执行循环。 当..
C 未定义行为(Undefined behavior) 在 C 语言中,'undefined behavior'(未定义行为)是指程序的行为在 C 语言标准中没有明确定义,因此可以表现为任何结果。 这意味着当程序出现未定义行为时,它可能会产生不可预测的结果,包括程序崩溃、数据损坏、安全漏洞,甚至可能看起来正常运行。 未定义行为是C语言中一个重要的概念,因为它涉及到程序的正确性和安全性。 以下是一些常见的可能导致未..