An open API service indexing awesome lists of open source software.

https://github.com/veaba/learn-c

learn c
https://github.com/veaba/learn-c

Last synced: about 1 year ago
JSON representation

learn c

Awesome Lists containing this project

README

          

## 关键字

| | |
| -------- | ------------------------------------------------------------- |
| 关键字 | 说明 |
| auto | 声明自动变量 |
| break | 跳出当前循环 |
| case | 开关语句分支 |
| char | 声明字符型变量或函数返回值类型 |
| const | 定义常量,如果一个变量被 const 修饰,那么它的值就不能再被改变 |
| continue | 结束当前循环,开始下一轮循环 |
| default | 开关语句中的"其它"分支 |
| do | 循环语句的循环体 |
| double | 声明双精度浮点型变量或函数返回值类型 |
| else | 条件语句否定分支(与 if 连用) |
| enum | 声明枚举类型 |
| extern | 声明变量或函数是在其它文件或本文件的其他位置定义 |
| float | 声明浮点型变量或函数返回值类型 |
| for | 一种循环语句 |
| goto | 无条件跳转语句 |
| if | 条件语句 |
| int | 声明整型变量或函数 |
| long | 声明长整型变量或函数返回值类型 |
| register | 声明寄存器变量 |
| return | 子程序返回语句(可以带参数,也可不带参数) |
| short | 声明短整型变量或函数 |
| signed | 声明有符号类型变量或函数 |
| sizeof | 计算数据类型或变量长度(即所占字节数) |
| static | 声明静态变量 |
| struct | 声明结构体类型 |
| switch | 用于开关语句 |
| typedef | 用以给数据类型取别名 |
| unsigned | 声明无符号类型变量或函数 |
| union | 声明共用体类型 |
| void | 声明函数无返回值或无参数,声明无类型指针 |
| volatile | 说明变量在程序执行中可被隐含地改变 |
| while | 循环语句的循环条件 |

## 数据类型

- 基本类型
- 整数类型

| 类型 | 存储大小 | 范围 |
| -------------- | ----------- | ------------------------------------ |
| char | 1 字节 | -128~127 or 0~255 |
| unsigned char | 1 字节 | 0~255 |
| signed char | 1 字节 | -128~127 |
| int | 2 或 4 字节 | -32768~32767、-2147483648~2147483647 |
| unsigned int | 2 或 2 字节 | 0~65535、0~4294967295 |
| short | 2 字节 | -32768~32767 |
| unsigned short | 2 字节 | 0~65535 |
| long | 4 字节 | -2147483648~2147483647 |
| unsigned long | 4 字节 | 0~4294967285 |

~存储大小与系统位数有关系~
![](https://www.runoob.com/wp-content/uploads/2014/09/32-64.jpg)

- 浮点类型

| 类型 | 存储大小 | 值范围 | 精度 |
| ----------- | -------- | ------------------- | --------- |
| float | 4 字节 | 1.2E-38 ~ 3.4E+38 | 6 位小数 |
| double | 8 字节 | 2.3E-308~1.7E+308 | 15 位小数 |
| long double | 16 字节 | 3.4E-4932~1.1e+4932 | 19 位小数 |

- 枚举类型
- 离散整数值变量
- void 类型
- 无可用的值
- 派生类型
- 指针类型
- 数据类型
- 结构类型
- 共用提类型
- 函数类型

### 整数常量

- 85 十进制
- 0213 八进制
- 2x4b 十六进制
- 30 整数
- 30u 无符号整数?
- 30l 长整数
- 30ul 无符号长整数

### 浮点常量

### 字符串、常量

| 转义 | 描述 |
| ------ | ------------------------ |
| `\\` | \字符 |
| `\'` | '字符串 |
| `\"` | "字符 |
| `\?` | ?字符 |
| `\a` | 警报铃声? |
| `\b` | 退格键 |
| `\f` | 换页符 |
| `\n` | 换行符 |
| `\r` | 回车 |
| `\t` | 水平制表符 |
| `\v` | 垂直制表符 |
| `\ooo` | 一到三位八进制 |
| `\xhh` | 一个或多个数字的十六进制 |

### 字符串常量

- `#define` 预处理器定义常量
- `const` 关键字定义常量

## 格式化表示字符

| 字符 | 描述 | 结果 |
| ---- | -------------------------- | -------------- |
| %E | 指数形式输出单、双精度实数 | `3.402823E+38` |
| %d | |
| %lu | |
| %s | |

## 常用函数

- sizeof

## 变量

- 可以使用`extern` 声明,但补丁已

## 存储类

- auto
- register
- static
- extern