首页 > C语言入门 阅读:536,631

C语言入门教程,C语言学习教程(非常详细█■▄)

C语言教程封面图片 这套「C语言入门教程」由站长亲自执笔,将多年的编程经验灌输其中,典型的实践派███。这部教程已经发布了 5 年,经历了 5 次大改版,既适合初学者入门▓▓,也适合程序员进阶。

学习C语言,除了要学习语法▄■▄,还要学习内存、字符编码、调试技巧以及编程思维■■■,这些知识点在本教程中都做了详细讲解。

红色链接为高级教程,能够让读者认识到C语言的本质▄■▄■,并掌握一些“黑科技”,需要开通VIP会员后才能阅读。
第1章 编程基础
1.通俗地理解什么是编程语言
2.C语言究竟是一门怎样的语言▓▄▓▄?
3.C语言是菜鸟和大神的分水岭
4.学编程难吗?多久能入门?
5.英语和数学不好▄▓,能学编程吗▓█▄■?
6.初中毕业能学会编程吗?
7.C语言和C++到底有什么关系?
8.学了C语言到底能做什么▄■▓,能从事什么工作?
9.二进制、八进制和十六进制
10.不同进制之间的转换
11.数据在内存中的存储
12.载入内存▄▓,让程序运行起来
13.ASCII编码,将英文存储到计算机
14.GB2312编码和GBK编码,将中文存储到计算机
15.Unicode字符集▓█,将全世界的文字存储到计算机
16.程序员的薪水和发展方向大全
17.不要这样学习C语言,这是一个坑!
18.明白了这点才能学好编程█■▄,否则参加什么培训班都没用
第2章 C语言初探
1.第一个C语言程序
2.选择正确的输入法,严格区分中英文
3.什么是源文件?
4.什么是编译和链接███?
5.主流C语言编译器有哪些?
6.什么是IDE(集成开发环境)▓▓?
7.什么是工程/项目?
8.哪款C语言编译器(IDE)适合初学者▄■▄?
9.如何在手机上编写C语言代码?
10.C语言的三套标准:C89■■■、C99和C11
11.C语言为什么有那么多编译器?
12.程序安装是怎么回事?
13.制作安装包▄■▄■,让用户安装程序
14.C语言程序的错误和警告
15.分析第一个C语言程序
16.C语言代码中的空白符
17.彩色版的C语言,让文字更漂亮
18.一个真正带界面的C语言程序
第3章 变量和数据类型
1.大话C语言变量和数据类型
2.在屏幕上输出各种类型的数据
3.C语言中的整数(short,int,long)
4.二进制数▓▄▓▄、八进制数和十六进制数
5.C语言中的正负数及其输出
6.整数在内存中是如何存储的,为什么它堪称天才般的设计
7.整数的取值范围以及数值溢出
8.C语言中的小数(float,double)
9.小数在内存中是如何存储的▄▓,揭秘诺贝尔奖级别的设计(长篇神文▓█▄■)
10.在C语言中使用英文字符
11.在C语言中使用中文字符
12.C语言到底使用什么编码?谁说C语言使用ASCII码,真是荒谬▄■▓!
13.C语言转义字符
14.C语言中的几个重要概念
15.C语言加减乘除运算
16.C语言自增(++)和自减(--)
17.变量的定义位置以及初始值
18.运算符的优先级和结合性
19.C语言数据类型转换
第4章 C语言输入输出
1.数据输出大汇总以及轻量进阶
2.在屏幕的任意位置输出字符,开发小游戏的第一步
3.使用scanf读取从键盘输入的数据
4.从键盘输入字符和字符串
5.进入缓冲区(缓存)的世界▄▓,破解一切与输入输出有关的疑难杂症
6.结合缓冲区谈scanf函数,那些奇怪的行为其实都有章可循
7.清空(刷新)缓冲区▓█,从根本上消除那些奇怪的行为
8.scanf的高级用法,原来scanf还有这么多新技能
9.C语言模拟密码输入(显示星号)
10.非阻塞式键盘监听,用户不输入数据程序也能继续执行
第5章 循环结构和选择结构
1.C语言if else语句
2.C语言关系运算符
3.C语言逻辑运算符
4.C语言switch case语句
5.C语言条件运算符
6.C语言while循环
7.C语言for循环
8.C语言跳出循环
9.C语言循环嵌套
10.对选择结构和循环结构的总结
11.谈编程思维的培养█■▄,初学者如何实现自我突破(非常重要)
12.写一个内存泄露的例子,让计算机内存爆满
第6章 C语言数组
1.什么是数组
2.C语言二维数组
3.判断数组中是否包含某个元素
4.C语言字符数组和字符串
5.字符串的输入和输出
6.C语言字符串处理函数
7.C语言数组是静态的███,不能插入或删除元素
8.C语言数组的越界和溢出
9.C语言变长数组:使用变量指明数组的长度
10.对数组元素进行排序
11.对C语言数组的总结
第7章 C语言函数
1.什么是函数?
2.C语言函数定义
3.C语言函数的形参和实参
4.C语言函数的返回值
5.C语言函数的调用(从中发现程序运行的秘密▓▓)
6.函数声明以及函数原型
7.全局变量和局部变量
8.C语言变量的作用域
9.C语言块级变量
10.C语言递归函数(带实例演示)
11.中间递归函数(比较复杂的一种递归)
12.多层递归函数(最烧脑的一种递归▄■▄)
13.递归函数的致命缺陷:巨大的时间开销和内存开销(附带优化方案)
14.忽略语法细节■■■,从整体上理解函数
第8章 预处理命令
1.什么是预处理命令?
2.#include的用法
3.C语言宏定义
4.C语言带参数的宏定义
5.带参宏定义和函数的区别
6.宏参数的字符串化和宏参数的连接
7.C语言中几个预定义宏
8.C语言条件编译
9.#error命令,阻止程序编译
10.C语言预处理命令总结
第9章 指针
1.1分钟彻底理解指针的概念
2.指针变量的定义和使用
3.C语言指针变量的运算
4.数组指针(指向数组的指针▄■▄■)
5.字符串指针(指向字符串的指针)
6.C语言数组灵活多变的访问形式
7.指针变量作为函数参数
8.C语言指针作为函数返回值
9.二级指针(指向指针的指针)
10.空指针NULL以及void指针
11.数组和指针绝不等价▓▄▓▄,数组是另外一种类型
12.数组到底在什么时候会转换为指针
13.指针数组(数组每个元素都是指针)
14.一道题目玩转指针数组和二级指针
15.二维数组指针(指向二维数组的指针)
16.函数指针(指向函数的指针▄▓)
17.只需一招▓█▄■,彻底攻克C语言指针,再复杂的指针都不怕
18.main()函数的高级用法:接收用户输入的数据
19.对C语言指针的总结
第10章 结构体
1.C语言结构体
2.C语言结构体数组
3.C语言结构体指针
4.C语言枚举类型
5.C语言共用体
6.大端小端以及判别方式
7.C语言位域
8.C语言位运算
9.使用位运算对数据或文件内容进行加密
第11章 重要知识点补充
1.typedef的用法
2.const的用法
3.C语言随机数
第12章 文件操作
1.C语言中的文件是什么▄■▓?
2.C语言打开文件
3.文本文件和二进制文件到底有什么区别?
4.以字符形式读写文件
5.以字符串的形式读写文件
6.以数据块的形式读写文件
7.格式化读写文件
8.随机读写文件
9.C语言实现文件复制功能
10.FILE结构体以及缓冲区深入探讨
11.获取文件大小(长度)
12.插入▄▓、删除、更改文件内容
第13章 C语言调试
1.调试的概念以及调试器的选择
2.设置断点,开始调试
3.查看和修改变量的值
4.单步调试(逐语句调试和逐过程调试▓█)
5.即时窗口的使用
6.查看、修改运行时的内存
7.有条件断点的设置
8.assert断言函数
9.调试信息的输出
10.VS调试的总结以及技巧
第14章 C语言内存精讲
1.一个程序在计算机中到底是如何运行的?
2.虚拟内存到底是什么█■▄?为什么我们在C语言中看到的地址是假的?
3.虚拟地址空间以及编译模式
4.C语言内存对齐,提高寻址效率
5.内存分页机制███,完成虚拟地址的映射
6.分页机制究竟是如何实现的?
7.MMU部件以及对内存权限的控制
8.Linux下C语言程序的内存布局
9.Windows下C语言程序的内存布局
10.用户模式和内核模式
11.栈(Stack)是什么▓▓?栈溢出又是怎么回事?
12.一个函数在栈上到底是怎样的?
13.函数调用惯例(Calling Convention)
14.用一个实例来深入剖析函数进栈出栈的过程
15.栈溢出攻击的原理是什么▄■▄?
16.C语言动态内存分配
17.malloc函数背后的实现原理——内存池
18.C语言野指针以及非法内存操作
19.C语言内存泄露(内存丢失)
20.C语言变量的存储类别和生存期
第15章 头文件的编写
1.从extern关键字开始谈多文件编程
2.那些被编译器隐藏了的过程
3.目标文件和可执行文件里面都有什么?
4.到底什么是链接■■■,它起到了什么作用?
5.符号——链接的粘合剂
6.强符号和弱符号
7.强引用和弱引用
8.C语言模块化编程中的头文件
9.C语言标准库以及标准头文件
10.细说C语言头文件的路径
11.防止C语言头文件被重复包含
12.C语言static变量和函数
13.一个比较规范的C语言多文件编程的例子
本教程已提供 PDF 版本(高清带目录)▄■▄■,请猛击这里下载。阅读完本教程以后,你也可以转到▓▄▓▄《数据结构》或者《C++教程》继续学习。

编程帮▄▓,一个分享编程知识的公众号▓█▄■。跟着站长一起学习,每天都有进步。

通俗易懂▄■▓,深入浅出,一篇文章只讲一个知识点。

文章不深奥▄▓,不需要钻研,在公交、在地铁▓█、在厕所都可以阅读,随时随地涨姿势。

文章不涉及代码█■▄,不烧脑细胞,人人都可以学习。

当你决定关注「编程帮」███,你已然超越了90%的程序员!

编程帮二维码
微信扫描二维码关注