海同网校C系列教程 │ ├─1 C语言概述 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 程序 算法和流程图 │ │ 程序、算法和流程图.mp4 │ │ │ └─3 C语言简介和简单的C程序 │ C程序的开发流程.mp4 │ C程序的注释.mp4 │ C语言的起源、特点及C程序的基本结构.mp4 │ 示例--第一个C程序.mp4 │ 计算机语言的发展.mp4 │ ├─10 高级函数 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─10 扩展2:函数指针数组 │ │ 1 函数指针数组的概念-1 .mp4 │ │ 2 函数指针数组的概念-2和函数指针数组的使用.mp4 │ │ │ ├─2 函数返回 │ │ 函数的返回值和return语句的实现机制 .mp4 │ │ │ ├─3 Linux的内存管理机制 │ │ 1 Linux的内存管理-1.mp4 │ │ 2 Linux的内存管理-2和C程序的运行流程 .mp4 │ │ │ ├─4 变量的存储类型、作用域和生命周期 │ │ 1 作用域的分类.mp4 │ │ 2 变量的存储类型-1.mp4 │ │ 3 变量的存储类型-2.mp4 │ │ 4 变量的存储类型-3.mp4 │ │ 5 变量的内存分配、存储方式、作用域和生命周期 .mp4 │ │ 6 链接属性.mp4 │ │ │ ├─5 extern │ │ 1 extern的使用.mp4 │ │ 2 extern的使用-2.mp4 │ │ │ ├─6 函数栈 │ │ 主调函数和被调函数、函数栈的调用流程 .mp4 │ │ │ ├─7 递归调用 │ │ 递归调用的概念.mp4 │ │ │ ├─8 指针函数与函数指针 │ │ 1 指针函数-1.mp4 │ │ 2 指针函数-2.mp4 │ │ 3 函数指针.mp4 │ │ 4 回调函数.mp4 │ │ 5 案例讲解--函数指针与指针函数.mp4 │ │ │ └─9 扩展1:可变参数列表 │ 可变参数列表的概念和使用.mp4 │ ├─11 字符串 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 字符串和字符数组 │ │ 1 字符串和字符数组的概念、初始化方式和输入输出 .mp4 │ │ 2 示例1--字符串和字符数组-1 .mp4 │ │ 3 示例2--字符串和字符数组-2 .mp4 │ │ 4 指向字符串的指针.mp4 │ │ 5 案例讲解--字符串和字符数组 .mp4 │ │ │ ├─3 字符串函数 │ │ 1 字符串处理函数-1.mp4 │ │ 2 字符串处理函数-2 .mp4 │ │ 3 字符串处理函数-3 .mp4 │ │ 4 案例讲解--字符串函数 .mp4 │ │ │ └─4 C标准函数 │ 1 C标准库函数.mp4 │ 2 案例讲解--C标准库函数.mp4 │ ├─12 结构体和联合 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 结构体的介绍(上) │ │ 1 结构体的概念和声明 .mp4 │ │ 2 结构体变量的定义.mp4 │ │ │ ├─3 结构体的介绍(下) │ │ 1 结构体变量成员的引用和赋值 .mp4 │ │ 2 结构体变量的初始化和结构体的嵌套 .mp4 │ │ │ ├─4 结构体数组 │ │ 1 结构体数组的概念、定义、初始化和引用 .mp4 │ │ 2 案例讲解--结构体数组 .mp4 │ │ │ ├─5 结构体指针 │ │ 1 结构体指针的概念和访问方式 .mp4 │ │ 2 结构体指针作为函数参数 .mp4 │ │ 3 指向结构体数组的指针、结构体自引用和不完整声明 .mp4 │ │ │ ├─6 类型别名 │ │ 1 类型别名定义typedef和#define .mp4 │ │ 2 typedef和#define的区别 .mp4 │ │ 3 案例讲解--类型别名.mp4 │ │ │ ├─7 字节对齐 │ │ 1 字节对齐的概念和对程序的影响 .mp4 │ │ 2 #pragma指令、字节对齐原则和编程设置 .mp4 │ │ │ ├─8 扩展1:位段 │ │ 位段的概念和定义 .mp4 │ │ │ └─9 扩展2:联合 │ 1 联合的概念.mp4 │ 2 示例--教师和学生信息的录入和输出.mp4 │ ├─13 指针高级 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 void指针和数据指针 │ │ 1 void指针的概念.mp4 │ │ 2 void指针的应用场合和数据指针的概念 .mp4 │ │ │ ├─3 指针与二维数组 │ │ 1 二维数组地址的表示.mp4 │ │ 2 示例--二维数组地址的表示 .mp4 │ │ 3 指针遍历二维数组-1 .mp4 │ │ 4 指针遍历二维数组-2.mp4 │ │ 5 二维字符数组-1 .mp4 │ │ 6 二维字符数组-2 .mp4 │ │ 7 案例讲解--指针与二维数组-1 .mp4 │ │ 8 案例讲解--指针与二维数组-2 .mp4 │ │ │ ├─4 指针数组 │ │ 指针数组的概念和定义 .mp4 │ │ │ ├─5 字符指针数组 │ │ 1 字符指针数组-1 .mp4 │ │ 2 字符指针数组-2 .mp4 │ │ 3 字符指针数组-3.mp4 │ │ 4 字符指针数组-4 .mp4 │ │ 5 案例讲解--字符指针数组 .mp4 │ │ │ ├─6 扩展1:gdb的高级使用 │ │ 1 gdb的高级命令.mp4 │ │ 2 示例--gdb的高级命令.mp4 │ │ │ └─7 扩展2:gdb core │ gdb core的使用 .mp4 │ ├─14 动态内存分配 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 动态内存分配 │ │ 1 内存分配方式 .mp4 │ │ 2 malloc和calloc函数 .mp4 │ │ 3 realloc和free函数 .mp4 │ │ 4 案例讲解--动态内存分配-1 .mp4 │ │ 5 案例讲解--动态内存分配-2.mp4 │ │ │ └─3 常见内存错误 │ 常见内存错误、避免方式和野指针 .mp4 │ ├─15 预处理 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 预处理 │ │ 预处理和宏定义的概念 .mp4 │ │ │ ├─3 无参宏定义 │ │ 无参宏定义的语法、宏的移除和宏定义的规则.mp4 │ │ │ ├─4 带参宏定义 │ │ 1 带参宏定义的语法结构和规则 .mp4 │ │ 2 带参宏定义和函数的区别 .mp4 │ │ │ ├─5 条件编译 │ │ 条件编译的概念和语法结构.mp4 │ │ │ ├─6 文件包含 │ │ 1 文件包含的概念.mp4 │ │ 2 多重包含.mp4 │ │ │ └─7 预处理操作符和预定义宏 │ 预处理操作符、预定义宏和其它预处理指令 .mp4 │ ├─16 C标准文件IO │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 稳健的介绍 │ │ 1 C文件的概念和文件系统的分类 .mp4 │ │ 2 文件流的概念 .mp4 │ │ │ ├─3 文件的打开和关闭 │ │ 1 文件类型结构体FILE和文件指针.mp4 │ │ 2 文件打开、文件关闭和文件位置指针 .mp4 │ │ │ ├─4 字符读写函数 │ │ 1 getchar和putchar函数.mp4 │ │ 2 fgetc和fputc函数 .mp4 │ │ 3 案例讲解--字符读写函数-1 .mp4 │ │ 4 案例讲解--字符读写函数-2 .mp4 │ │ │ ├─5 字符串读写函数 │ │ fgets和fputs函数 .mp4 │ │ │ ├─6 格式化读写函数 │ │ 1 fscanf和fprintf函数 .mp4 │ │ 2 sscanf和sprintf函数 .mp4 │ │ │ ├─7 二进制读写函数 │ │ 1 fread和fwrite函数-1 .mp4 │ │ 2 fread和fwrite函数-2 .mp4 │ │ │ └─8 文件定位 │ 1 文件定位的概念 .mp4 │ 2 fseek函数和其它函数 .mp4 │ ├─17 高质量编码规范 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 编码规范的介绍 │ │ 编码规范的重要性 .mp4 │ │ │ ├─3 宏观上高质量编码规范 │ │ 宏观的编码规范 .mp4 │ │ │ └─4 微观上高质量编码规范 │ 1 程序的健壮性和编程的优化-1 .mp4 │ 2 程序的健壮性和编程的优化-2 .mp4 │ ├─18 数据结构与算法概述 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 数据结果概述 │ │ 数据结构概述.mp4 │ │ │ ├─3 数据的逻辑结构 │ │ 数据的逻辑结构.mp4 │ │ │ ├─4 数据的存储结构 │ │ 1 存储特点、顺序与链式存储 .mp4 │ │ 2 索引与散列存储 .mp4 │ │ │ └─5 算法概述 │ 1 算法的定义 .mp4 │ 2 算法的分析 .mp4 │ ├─19 线性的逻辑结构—线性表 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 Eclipse CDT开发环境的搭建 │ │ Eclipse CDT开发环境的搭建 .mp4 │ │ │ ├─3 线性表的概述 │ │ 线性表的概述 .mp4 │ │ │ ├─4 线性表的顺序存储结构 │ │ 1 线性表的顺序存储结构 .mp4 │ │ 2 顺序表的基本运算—创建、置空、求表长与打印.mp4 │ │ 3 顺序表的基本运算—插入、删除与定位 .mp4 │ │ │ ├─5 线性表的链式存储结构(链表) │ │ 1 单向链表的概述 .mp4 │ │ 2 单向链表的基本运算--建立和查找 .mp4 │ │ 3 单向链表的基本运算--插入和删除 .mp4 │ │ 4 单向链表的扩展运算--倒置和合并 .mp4 │ │ 5 单向循环链表的概述与运算.mp4 │ │ 6 双向循环链表的概述与运算 .mp4 │ │ │ └─6 线性表的应用举例 │ 应用举例--线性表 .mp4 │ ├─2 GCC和GBB │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 gcc介绍 │ │ 1 GCC的发展和语法结构.mp4 │ │ 2 示例1-gcc编译的基本选项.mp4 │ │ 3 示例2-gcc编译的优化选项.mp4 │ │ 4 gcc变异的警告和出错选项.mp4 │ │ │ └─3 gdb介绍 │ 1 GDB的概念及使用.mp4 │ 2 示例-gdb调试命令.mp4 │ ├─20 线性的逻辑结构—栈 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 栈的概述 │ │ 栈的概述.mp4 │ │ │ ├─3 栈的顺序存储结构 │ │ 栈的顺序存储结构.mp4 │ │ │ ├─4 栈的链式存储结构 │ │ 栈的链式存储结构.mp4 │ │ │ └─5 栈的应用举例 │ 栈的应用举例 .mp4 │ ├─21 线性的逻辑结构—队列 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 队列的概述 │ │ 队列的概述 .mp4 │ │ │ ├─3 队列的顺序存储结构 │ │ 队列的顺序存储结构 .mp4 │ │ │ └─4 队列的链式存储结构 │ 1 队列的链式存储结构 .mp4 │ 2 应用举例--球钟问题.mp4 │ ├─22 非线性逻辑结构—树与二叉树 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 树与二叉树的基本概念 │ │ 1 树的基本概念和属性.mp4 │ │ 2 二叉树的基本概念和属性.mp4 │ │ │ └─3 二叉树的遍历 │ 二叉树的遍历.mp4 │ ├─23 常用算法 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 排序 │ │ 1 排序的分类 .mp4 │ │ 2 交换法--冒泡排序 .mp4 │ │ 3 交换法--快速排序 .mp4 │ │ 4 插入法--直插排序 .mp4 │ │ │ ├─3 查找 │ │ 查找 .mp4 │ │ │ └─4 哈希表 │ 哈希表 .mp4 │ ├─24 多模块软件的编译和链接 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 C程序的编译和运行 │ │ 1 C程序的编译和运行过程-1 .mp4 │ │ 2 C程序的编译和运行过程-2 .mp4 │ │ │ ├─3 多模块编译 │ │ 多模块编译的概念和优缺点.mp4 │ │ │ └─4 静态库和共享库 │ 1 库的概念和静态库的创建与使用-1.mp4 │ 2 静态库的创建与使用-2 .mp4 │ 3 共享库的创建与使用 .mp4 │ ├─25 make和makefile │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 make和Makefile的介绍 │ │ make和Makefile的概念及发展 .mp4 │ │ │ ├─3 make和Makefile(上) │ │ 1 make的使用语法和Makefile的编写原则与规则 .mp4 │ │ 2 示例1--make和Makefile .mp4 │ │ 3 示例2--make和Makefile .mp4 │ │ │ └─4 make和Makefile(下) │ 1 Makefile的变量使用-1 .mp4 │ 2 Makefile的变量使用-2 .mp4 │ 3 虚目标、特殊目录和默认模式规则.mp4 │ ├─26 项目和综合案例 │ ├─1 案例讲解-多模块编译程序 │ │ 1 案例讲解--多模块编译程序-1 .mp4 │ │ 2 案例讲解--多模块编译程序-1 .mp4 │ │ 3 案例讲解--多模块编译程序-3.mp4 │ │ 4 案例讲解--多模块编译程序-4 .mp4 │ │ │ ├─2 案例讲解-使用makefile编译程序 │ │ 2 案例讲解--使用makefile编译程序 .mp4 │ │ │ ├─3 猜拳游戏 │ │ 1 案例分析.mp4 │ │ 2 玩家结构体的建立 .mp4 │ │ 3 随机数产生.mp4 │ │ 4 排行榜函数 .mp4 │ │ │ └─4 酒店管理系统(项目实例) │ 1 项目介绍及规范 .mp4 │ 10 房间结构实现与测试-1.mp4 │ 11 房间结构实现与测试-2 .mp4 │ 12 客户结构实现-1 .mp4 │ 13 客户结构实现-2.mp4 │ 14 客户结构测试 .mp4 │ 15 账单结构实现与测试 .mp4 │ 16 管理员登陆界面功能.mp4 │ 17 管理员登入功能实现.mp4 │ 18 管理员level 0 功能实现和修改密码 .mp4 │ 19 创建分级管理员和注销管理员 .mp4 │ 2 项目结构分析.mp4 │ 20 前台管理员控制函数 .mp4 │ 21 预约办理实现.mp4 │ 22 修改登记实现.mp4 │ 23 取消订单实现 .mp4 │ 24 查询 .mp4 │ 25 文件保存-1.mp4 │ 26 文件保存-2 .mp4 │ 27 入住办理-1 .mp4 │ 28 入住办理-2 .mp4 │ 29 退房 .mp4 │ 3 数据结构头文件.mp4 │ 4 通用链表-1.mp4 │ 5 通用链表-2 .mp4 │ 6 管理员功能-1 .mp4 │ 7 管理员功能-2.mp4 │ 8 管理员功能-3 .mp4 │ 9 管理员功能测试.mp4 │ ├─3 基本数据类型 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─10 扩展4:字符输入和输出函数 │ │ getchar和putchar的语法结构 .mp4 │ │ │ ├─2 常量和变量 │ │ 1 C语言中的基本元素类型及常量.mp4 │ │ 2 示例:常量.mp4 │ │ 3 变量的概念和命名规则.mp4 │ │ 4 变量的声明、初始化和定义.mp4 │ │ │ ├─3 数据类型 │ │ 数据类型的概念和分类.mp4 │ │ │ ├─4 整型 │ │ 1 整型的概念.mp4 │ │ 2 整型的概念和分类.mp4 │ │ 3 示例:整型常量和变量.mp4 │ │ │ ├─5 字符型 │ │ 1 字符型的概念.mp4 │ │ 2 字符常量.mp4 │ │ 3 字符变量.mp4 │ │ │ ├─6 格式化输入输出函数 │ │ 1 输入输出的概念和printf函数的语法结构 .mp4 │ │ 2 示例--printf函数 .mp4 │ │ 3 scanf函数的语法结构.mp4 │ │ 4 示例1--scanf函数 .mp4 │ │ 5 示例2--scanf函数.mp4 │ │ 6 案例讲解--格式化输入输出函数 .mp4 │ │ │ ├─7 扩展1:只读变量和常量 │ │ 只读变量、常量的定义和区别.mp4 │ │ │ ├─8 扩展2:浮点型 │ │ 1 浮点型的概念、分类、浮点型常量和变量 .mp4 │ │ 2 示例--浮点型的存储方式 .mp4 │ │ │ └─9 扩展3:枚举类型 │ 1 枚举类型的声明和变量定义 .mp4 │ 2 示例--枚举类型 讲师:王正平.mp4 │ ├─4 条件结构 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 条件语句(上) │ │ 1 if语句的语法结构-1 .mp4 │ │ 2 示例--if语句 .mp4 │ │ 3 if语句的语法结构-2 .mp4 │ │ 4 if语句的语法结构-3 .mp4 │ │ 5 案例讲解--条件语句(上) .mp4 │ │ │ ├─3 条件语句(下) │ │ 1 switch语句的语法结构及和if语句的比较 .mp4 │ │ 2 案例讲解--条件语句(下) .mp4 │ │ │ └─4 条件运算符 │ 条件运算符的作用和语法结构 .mp4 │ ├─5 循环控制 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 while和do-while循环 │ │ 1 循环的优势及while和do-while循环的语法结构 .mp4 │ │ 2 示例--while和do-while循环、循环嵌套 .mp4 │ │ 3 案例讲解--while和do-while循环.mp4 │ │ │ ├─3 for循环 │ │ 1 for循环的语法结构-1 .mp4 │ │ 2 for循环的语法结构-2 .mp4 │ │ 3 案例讲解--for循环 .mp4 │ │ │ └─4 跳转语句 │ 1 跳转语句的概念和break语句的使用 .mp4 │ 2 continue语句的使用和各种循环的嵌套跳转.mp4 │ 3 案例讲解--跳转语句 .mp4 │ ├─6 运算符和表达式 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 运算符和表达式的介绍 │ │ 运算符和表达式的概念、运算符的分类和优先级 .mp4 │ │ │ ├─3 运算符(上) │ │ 1 算术运算符.mp4 │ │ 2 关系和逻辑运算符 .mp4 │ │ │ ├─4 运算符(中) │ │ 逗号运算符和其它运算符 .mp4 │ │ │ ├─5 类型转换 │ │ 1 类型转换1.mp4 │ │ 2 类型转换2.mp4 │ │ │ └─6 扩展:运算符(下) │ 1 位操作运算符-1.mp4 │ 2 位操作运算符-2.mp4 │ 3 扩展:运算符(下).mp4 │ ├─7 函数基础 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 函数的基本使用 │ │ 1 函数的基本使用和分类.mp4 │ │ 2 函数定义和函数调用.mp4 │ │ 3 示例:函数调用.mp4 │ │ 4 函数调用(下).mp4 │ │ 5 案例讲解-函数的基本使用.mp4 │ │ │ ├─3 函数原型 │ │ 1 函数原型的概念和声明.mp4 │ │ 2 函数原型的作用-1.mp4 │ │ 3 函数原型的作用-2.mp4 │ │ 4 函数原型的作用.mp4 │ │ 5 函数原型使用的注意点.mp4 │ │ 6 案例讲解-函数原型.mp4 │ │ │ └─4 扩展:函数参数的求值顺序和二义性 │ 扩展:函数参数的求值顺序和二义性.mp4 │ ├─8 数组 │ ├─1 序言 │ │ 序言.mp4 │ │ │ ├─2 一维数组 │ │ 1 数组的概念.mp4 │ │ 2 一维数组的定义和初始化.mp4 │ │ 3 一维数组的引用.mp4 │ │ 4 案例讲解-一维数组.mp4 │ │ │ ├─3 用数组实现冒泡排序算法(算法-排序) │ │ 1 冒泡排序的原理.mp4 │ │ 2 冒泡排序的实现.mp4 │ │ │ ├─4 用数组实现选择排序算法(算法-排序) │ │ 选择排序的原理和实现.mp4 │ │ │ ├─5 二维数组 │ │ 1 二维数组的定义、初始化和引用.mp4 │ │ 2 示例--二维数组的定义、初始化和遍历 .mp4 │ │ 3 案例讲解--二维数组.mp4 │ │ │ ├─6 扩展1:用数组实现栈(数据结构-栈的简单实现) │ │ 1 数组结构--栈的原理.mp4 │ │ 2 数组结构--栈的简单实现-1 .mp4 │ │ 3 数组结构--栈的简单实现-2.mp4 │ │ │ └─7 扩展2:用数组实现队列 │ 数据结构--队列的原理和实现.mp4 │ └─9 指针基础 ├─1 序言 │ 序言.mp4 │ ├─2 指针的介绍 │ 1 指针的作用、指针和指针变量的概念.mp4 │ 2 指针的定义和初始化-1 .mp4 │ 3 指针的定义和初始化-2.mp4 │ 4 指针的定义和初始化-3 .mp4 │ ├─3 段错误 │ 段错误的概念、成因、避免和解决 .mp4 │ ├─4 指针运算 │ 1 取地址和指针运算符及指针赋运算.mp4 │ 2 数组名的概念和指针加减运算-1.mp4 │ 3 指针加减运算-2和指针比较运算.mp4 │ ├─5 函数传参 │ 1 函数传参的方式和区别-1 .mp4 │ 2 函数传参的方式和区别-2 .mp4 │ ├─6 指针与一维数组 │ 1 指向数组的指针和数组的遍历方式.mp4 │ 2 数组的传参方式.mp4 │ ├─7 二级指针 │ 二级指针的概念和定义 .mp4 │ └─8 常量指针和指针常量 指针常量的概念和指向常量的指针常量 .mp4
使用道具 举报
本版积分规则 发表回复 回帖并转播 回帖后跳转到最后一页
江苏省公安厅
江苏省通信管理局
浙江省台州刑侦支队
DEFCON GROUP 86025
邮箱系统
应急响应中心
红盟安全
官方QQ群:112851260
官方邮箱:security#ihonker.org(#改成@)
官方核心成员
Archiver|手机版|小黑屋| ( 沪ICP备2021026908号 )
GMT+8, 2025-5-2 03:00 , Processed in 0.129784 second(s), 17 queries , Gzip On.
Powered by ihonker.com
Copyright © 2015-现在.