download:C语言系统化精讲 重塑你的编程思想 打造坚实的开发基础****完结
修炼内功最强语言,训练编程思想最有效语言,圣经般存在的语言,2020 TIOBE排行冠军语言——这些说的,都是C语言。每个优秀开发者都应该精通C语言,这门课程就是为所有没学过、没学好C语言的你专属打造,多种编程语言技术专家bennyhuo独家分享,带你系统、高效、轻松啃透C语言这个硬骨头!
**
适合人群
**
希望获得更深层次进阶语言的开发者
希望夯实语言基础的开发者
希望精雕细琢掌握多门语言的开发者
有面试/跳槽/晋升需求的开发者和在校生
**
技术储备要求
**
零门槛,有计算机基础、操作系统、编程基础和经验更佳
章节目录:
第1章 课程导学 试看
本章作为课程内容引入,主要引见课程构造,课程的学习办法等。希望你能经过这门课程彻底控制程序言语的“道”和“术”。
共 2 节 (7分钟) 收起列表
1-1 课前必读
1-2 课程引见与学习指南 (06:20)试看
第2章 C言语必备根底 试看
本章主要解说演示编译环境搭建,IDE配置,调试办法,代码标准作风等内容,为课程后续内容做足准备工作。
共 4 节 (43分钟) 收起列表
2-1 环境搭建【CLion/MSVC/MinGW】 (09:34)
2-2 HelloWorld【cmake工程构造】 (07:41)
2-3 程序调试办法 (13:05)试看
2-4 C言语的代码作风【Google C CodeStyle/CLion配置代码作风】 (11:53)
第3章 C言语快速入门
本章中心是对C言语的根本数据类型、变量常量、运算符、分支和循环语句等必备学问停止解说,合适零根底的同窗快速上手,也合适C言语根底单薄的同窗查缺补漏。
共 10 节 (132分钟) 收起列表
3-1 数据类型之int类型【不同系统版本差别】 (16:31)
3-2 数据类型之char类型【常见问题处理】 (15:11)
3-3 数据类型之浮点类型【实践应用技巧】 (09:43)
3-4 变量【内存地址剖析】 (10:00)
3-5 常量【常量修正秘笈】 (11:54)
3-6 运算符-1【易踩坑点】 (16:01)
3-7 运算符-2【难点打破】 (10:36)
3-8 条件分支语句 (16:05)
3-9 循环语句 (17:18)
3-10 案例:猜数字的游戏 (08:04)
第4章 函数与程序构造
本章解说C言语中函数的声明、完成以及运用办法,变量的类型和作用域。本章最后还会为你定制一个经典的汉诺塔的问题来理论函数的递归。置信经过本章的学习,你就能够独立完成一些根本功用的程序开发了。
共 6 节 (55分钟) 收起列表
4-1 函数根底【tips:Google命名标准】 (06:41)
4-2 函数的原型【空参数列表与 C++的区别】 (08:50)
4-3 变量的类型和作用域【Compiler Explorer查看汇编指令】 (16:26)
4-4 函数的变长参数【比照Java的变长参数】 (07:11)
4-5 函数的递归【C言语完成斐波那契数列】 (10:22)
4-6 案例:汉诺塔 (05:29)
第5章 预处置和宏
本章解说C言语的预处置和宏的运用办法,包括文件包含、条件编译、宏函数等特性的了解和应用。本章最后会带你深度比照宏和函数完成一个便当打印输出的PRINTLNF 宏。
共 5 节 (53分钟) 收起列表
5-1 文件包含【领略编译器宏之以小搏大】 (09:45)
5-2 案例:自定义头文件 (07:35)
5-3 宏函数 (10:46)
5-4 条件编译【控制实践应用场景】 (11:15)
5-5 案例:完成 PRINTLNF (13:26)
第6章 玩转数组
本章将带你吃透C言语中的数组,包括数组在内存当中的存储方式,字符串的根本概念,数组作为函数参数传送等内容。本章最后也会带你就数组元素的排序这一经典问题停止理论,加深对数组自身的了解。
共 7 节 (62分钟) 收起列表
6-1 数组根底【C言语设计哲学】 (10:34)
6-2 数组的边境 (09:50)
6-3 字符串 (08:35)
6-4 函数的数组类型参数【C言语极致效率之源】 (04:45)
6-5 二维数组【数组参数的正确运用姿态】 (10:11)
6-6 案例:打乱数组的次第【各种场景应用】 (06:02)
6-7 案例:数组元素的排序【Lomuto分割法】 (11:04)
第7章 吃透指针 试看
本章将带你吃透C言语的指针,包括指针的运算、函数参数传送以及返回值的内存复制过程、动态内存分配、函数指针等特性的剖析及应用。本章最后还会分离宏和指针深度分析一个简单的交流变量值的多种完成办法以及指针版本的快速排序算法的完成。...
共 10 节 (105分钟) 收起列表
7-1 指针根底【摸清实质带你爱上指针】 (09:06)
7-2 只读指针变量与只读变量指针 (04:43)
7-3 特殊的指针【运用忌讳】 (09:35)
7-4 指针的运算【各式魔法操作】 (10:26)试看
7-5 左值和右值【只需记住这两点】 (06:54)
7-6 指针参数作为返回值【经过汇编理解函数返回值机制】 (11:21)
7-7 动态内存分配【打破面试高频考点】 (14:30)
7-8 函数指针与typedef (14:09)
7-9 案例:交流两个变量的值 (14:49)
7-10 案例:指针版本的快速排序【Hoare分割法】 (08:39)
第8章 聚合数据类型
本章将解说C言语的聚合数据类型,包括构造体、结合体、枚举等特性及应用,也重点分析构造体的内存对齐特性,本章最后会分离前面的学问给出字节序判别和单链表的根本完成的案例。
共 6 节 (76分钟) 收起列表
8-1 构造体【内存占用剖析】 (15:34)
8-2 构造体的内存对齐【内存占用优化】 (14:42)
8-3 结合体【运用场景剖析】 (08:32)
8-4 枚举【多言语比照】 (12:25)
8-5 案例:判别字节序 (07:03)
8-6 案例:单链表的根本完成 (16:47)
第9章 字符串的应用
本章将解说规范库中对字符串提供的支持,包括窄字符与宽字符相关的字符类型判别,字符串比拟、衔接、复制,原始内存的肃清、复制、挪动等工具函数的应用,以及窄字符与宽字符的转换函数及编码设置的办法,最后会对C99新增的restrict、C11新增的平安版本函数做剖析。...
第10章 时间的应用
本章将解说规范库中对时间提供的支持,包括计算机软件当中各类常见的时间概念,获取系统时间、日历时间的办法,时间的格式化和解析的办法等,由于各平台对时间的支持存在一定差别,我们运用条件编译完成一个跨平台的毫秒时间戳的获取函数,为你编写跨平台的代码提供思绪。...
第11章 文件的输入输出
本章将解说规范库中对文件输入输出的支持,包括文件流的概念,文件流按字符、按行、按字节读写函数的运用,并运用多个版本的文件复制的案例贯串全章,在比照和迭代当中深入了解不同的读写方式之间的差别,加深你对文件流缓冲等概念的了解。...
第12章 线程与并发
本章将解说C言语规范库从C11引入的线程以及并发相关学问。线程和并发是开发人员的必备根底,本章内容除了协助你在理论当中更好地理解诸如pthread这样的线程库以外,关于其他现代言语的学习也是十分有益的。本章最后综合所学完成处置复杂的线程返回结果、并发任务执行与函数回调两个理论案例。...
第13章 编译、链接和库
本章将基于gcc解说C言语编译过程中的各个环节和细节,协助你理解C言语是如何从源码一步一步编译成最后的可执行文件,也会解说如何将本人的模块作为依赖导出,如何运用conan来管理第三方依赖,本章最后还会以C++和Java为例传授你如何运用其他言语来调用C言语库。...
第14章 GUI 编程理论
本章将解说Linux桌面GUI的主流开发技术GTK+,基于该框架理解如何运用C言语开发 GUI应用,控制如何完成跨平台的GUI应用程序开发(支持Windows/macOS/Linux),还将理解运用GTK+开发GUI程序的根本办法,包括如何创立Window,经过css来编辑控件款式,运用Glade快速完成UI规划等。最后我们将仿照macOS的计算器完成一个功用相对...
第15章 综合案例:桌面跨平台的下载工具
本章作为课程最后的综合案例,将带你从零开端开发一个桌面跨平台的下载工具,包括运用Conan管理依赖,运用GTK+开发UI,运用curl访问网络,运用sqlite来存储任务,运用独立的线程来承载下载任务等等。本章综合性较强,我们力图尽可能多地掩盖课程当中所学的学问,协助大家进一步加深对C言语的认识和了解,培育运用C言语构建...
第16章 课程总结
本章作为课程的最后一章,我们将带你整体梳理课程所学的内容,并提供一些后续的学习倡议,在课程问答区教师等着与你进一步交流。
本课程持续更新中