GitHub中文社区

C 语言 errno.h

errno.herrno 变量errno.h声明了一个 int 类型的 errno 变量,用来存储错误码(正整数)。如果这个变量有非零值,表示已经执行的程序发生了错误。int x = -1;errno = 0;int y = sqrt(x);if (errno != 0) { fprintf(st

C 语言 ctype.h

ctype.hctype.h头文件定义了一系列字符处理函数的原型。字符测试函数这些函数用来判断字符是否属于某种类型。isalnum():是否为字母数字isalpha():是否为字母isdigit():是否为数字isxdigit():是否为十六进制数字符islower():是否为小写字母isupper

C 语言assert.h

assert.hassert()assert.h头文件定义了宏assert(),用于在运行时确保程序符合指定条件,如果不符合,就报错终止运行。这个宏常常被称为“断言”。assert(PI > 3);上面代码在程序运行到这一行语句时,验证变量PI是否大于3。如果确实大于3,程序继续运行,否则就会

C 语言多字节字符

多字节字符本章介绍 C 语言如何处理非英语字符。Unicode 简介C 语言诞生时,只考虑了英语字符,使用7位的 ASCII 码表示所有字符。ASCII 码的范围是0到127,也就是最多只能表示100多个字符,用一个字节就可以表示,所以char类型只占用一个字节。但是,如果处理非英语字符,一个字节就

C 语言命令行环境

命令行环境命令行参数C 语言程序可以从命令行接收参数。$ ./foo hello world上面示例中,程序foo接收了两个命令行参数hello和world。程序内部怎么拿到命令行参数呢?C 语言会把命令行输入的内容,放在一个数组里面。main()函数的参数可以接收到这个数组。#include &l

C 语言多文件项目

多文件项目简介一个软件项目往往包含多个源码文件,编译时需要将这些文件一起编译,生成一个可执行文件。假定一个项目有两个源码文件foo.c和bar.c,其中foo.c是主文件,bar.c是库文件。所谓“主文件”,就是包含了main()函数的项目入口文件,里面会引用库文件定义的各种函数。// File f

C 语言变量说明符

变量说明符C 语言允许声明变量的时候,加上一些特定的说明符(specifier),为编译器提供变量行为的额外信息。它的主要作用是帮助编译器优化代码,有时会对程序行为产生影响。constconst说明符表示变量是只读的,不得被修改。const double PI = 3.14159;PI = 3; /

C 语言文件操作

文件操作本章介绍 C 语言如何操作文件。文件指针C 语言提供了一个 FILE 数据结构,记录了操作一个文件所需要的信息。该结构定义在头文件stdio.h,所有文件操作函数都要通过这个数据结构,获取文件信息。开始操作一个文件之前,就要定义一个指向该文件的 FILE 指针,相当于获取一块内存区域,用来保

C 语言I/O 函数

I/O 函数C 语言提供了一些函数,用于与外部设备通信,称为输入输出函数,简称 I/O 函数。输入(import)指的是获取外部数据,输出(export)指的是向外部传递数据。缓存和字节流严格地说,输入输出函数并不是直接与外部设备通信,而是通过缓存(buffer)进行间接通信。这个小节介绍缓存是什么

C 语言预处理器

预处理器(Preprocessor)简介C 语言编译器在编译程序之前,会先使用预处理器(preprocessor)处理代码。预处理器首先会清理代码,进行删除注释、多行语句合成一个逻辑行等工作。然后,执行#开头的预处理指令。本章介绍 C 语言的预处理指令。预处理指令可以出现在程序的任何地方,但是习惯上