#define INTRODUCTION 52
// 向着星辰与深渊,欢迎来到 mdr 的 C 语言教程!
#define INFORMATION 'C'
// B 站账号 Minsecrus
// GitHub 账号 Minsecrus
// QQ 交流群 885719573
#include <stdio.h>
int main(int argc, char* argv[]){
printf("%d %c", INTRODUCTION, INFORMATION);
return 0;
}
- 这里是 Mdr's C Tutorial,欢迎来这里共同学习
- 此仓库中文档的定位是 教程,即我们希望读者阅读这些文档可以获得与 C 语言 以及 计算机科学 相关知识
- 本教程的目标:在 准确 的基础上力争 简洁 和 生动
- 此教程并非一时兴起而作,实则怀“为往圣继绝学,为万世开太平”之愿,深思熟虑打造而成
- 得天独厚者,替天行善
总纲
关于本教程
- 标题由 一级标题 开始,依次递减
- 代码块 和 列表 前后各有一个空行;文件结尾要有一个空行;文件任何位置不得存在连续两个空行
- 段落和段落之间有一个空行;只换行不换段落,无空行,在前一行结尾加两个空格;
- 强调 用
** ** 标识,次强调 用 * * 标识,代码块 用 ` ` 标识;
- 引文和注释用
> 标识;书名和文章名用 *** *** 标识;
*** *** ** ** * * ` ` 前后 各空一个空格,但中文标点前后无需加空格;
- 中西文字符,或者中文和数字之间加一个空格;
- 在中文上下文中用全角标点,比如全角小括号,全角冒号等;
- 要正确使用标点符号,分清 顿号、逗号、分号 和 句号,尤其避免一逗到底;
- 在一个 术语 (Terminology) 首次出现的时候在 半角小括号 内给出 对应的外来语,同时给出 首字母缩略语 (Acronym)。这些外来语通常对应 概念 (Concept) 的原文 ,希望有助于读者明确分辨词语的含义:
- 为减少读者的记忆负担,下文分情况使用 术语的汉语表述 和 首字母缩略语:初始章节以前者为主,进阶章节以后者为主
- 外来语和缩略语可能视情况在不同章节多次出现
- 括号外左侧右侧各空一个空格,括号内无空格
- 外来语 不能 带斜体、加粗、下划线、删除线和代码块——用默认的字体;
- 大部分外来语单词摘自 维基百科 和 C++ 参考手册;
- 专有名词 需 大写;
- 图片统一放在
/images/ 目录下,并采用 绝对路径 引入:
- 截图统一采用 PNG 格式,命名为三位数字,如:
001.png;
- 拍照统一采用 JPEG 格式,命名为不带前导零的数字,如:
1.jpg;
- 在每篇文档结尾写出引用内容的出处;
- 语言风格:
- 使用 正式 的中文白话,尽量 不用 口头语;
- 尽量 不用 反问,设问和借喻;
- 用清晰的修饰限定成分,避免含混不清;不用过于夸张的修饰限定成分;有数据支持的时候要列举数据;
- 避免带有主观性的措辞;避免几个连续的词表示同一个意思;
- 保证整个仓库中所有文档 语言风格的一致性。
- 如果是项目代码,需要构建系统完成编译运行,需将必要的相关文件放入对应目录,例如
CMakeLists.txt 和 xmake.lua 等;
- 源文件后缀名为
.c,头文件后缀名为 .h
- 标识符采用惯例命名,不允许使用拼音
if else for while 必须跟随一条 复合语句,即用 大括号 包裹
- 独立思考;
- 勤于搜索(尤其是出现较多关联概念时);
- 理解中文白话,最好有一定的英语水平(建议达到 CEFR B2)但不强制,最好有一定的数学水平(高中数学 + 数理逻辑基础 + 微积分 + 基础的概率论 + 基础的数论 + 基础的图论)但不强制;
CC-BY-SA 4.0