郁金香 VC++基础视频教程
本帖最后由 三爷 于 2015-11-2 10:41 编辑**** Hidden Message *****一、前言1、 C,C++,VC之间的关系,VC环境的安装配置 ---第1课 A.C,C++,VC之间的关系,VC环境的安装配置 1.2、我们的第一个程序(Hello World)代码详解.----第2课 A.我们的第一个程序(Hello World)代码详解. 2.1、传统的C语言编译方式 ---第3课A、用记事本手写代码 B、命令行编译生成EXE(Cl.EXE)C、格式化输出函数printf D、转义字符\n E、main函数 2.2、VC集成环境编译方式 ---第4课A、VC环境下创建项目工程 B、书写代码 C、Debug和Release D、文件包含#include 二、C语言概论 1C/C++基本数据类型 ---第5课1.1整型(int,short,long,unsigned)A、整型常量(二进制,八进制十进制,十六进制) B、整型变量(基本型,短整型,长整型,无符号型) 变量占用空间大小(字节) 变量所表示数的范围 C、sizeof操作符 D、整数四则运算(+,-,*,/)及赋值(=) 1.2浮点型(实型)float,double ---第6课 A、实型常量(十进制数形式,指数形式) B、实型变量(单精度型和双精度型) C、单精度与双精度区别 1.3、字符(char) ---第7课 A、字符常量及特点 B、转义字符(\n\t\v\b\r\f\\\'\ddd\xhh C、字符变量 D、字符串常量 E、符号常量 F变量赋值和类型转换 G、变量赋初值 H、变量类型转换(自动转换,强制转换) 1.4、基本运算符 ---第8课 1、算术运算符(+,-,*,/,%,++,--) 2、关系运算符(>,<,==,>=,<=,!=) 3、逻辑运算符(&&,||,!) 4、位操作运算符(&,|,~,^,<<,>>) 5、赋值运算符(=,+=,-=,*=,/=,%=,&=,|=,^=,>>=,<<=)1.5 基本运算符 ---第9课 6、条件运算符(三目运算? 7、逗号运算符(,) 8、指针运算符(*,&) 9、求字节数运算符(sizeof) 10、特殊运算符(括号,下标,成员) 1.6 基本运算符 ---第10课 11、运算符的优先级和结合性 12、自增1(++),自减1(--)运算符 13、算术表达式 14、赋值运算符和赋值表达式 15、复合赋值符及表达式(+=,-=,*=,%=,<<=,>>=,&=,^=,|=) 16、逗号运算符 2、C语言程序设计 2.1、程序代码结构 ---第11课 A、顺序结构 B、分支结构 C、循环结构 2.2、C程序的语句---第12课 A、表达式语句 B、函数调用句 C、控制语句(条件判断,循环执行,转向语句) D、复合语句 E、语句 E、赋值语句 F.、数据输出语句(printf,putchar) G、数据输入语句(scanf,getchar) 2.3分支结构程序 ---第13课 A.关系运算符和表达式 B.逻辑运算符和表达式(与(&&),或(||),非(!)) C.if语句的三种形式及注意事项 D.if语句嵌套及注意事项 E.条件运算符和表达式 F.switch语句(开关语句) 3、数组 3.1、 数组元素表示方法 ---第14课 A.元素的概念 B.下标的概念 3.2、二维数组 ---第15课 A、二维数组元素表示方法 B、二维数组的初始化 3.3、字符数组(字符串) ---第16课 A、字符数组的定义 B、字符数组的赋值 3.4、字符串常用函数 ---第17课 A、格式化字串sprintf B、puts屏幕显示字符串 C、gets从键盘获取字串 D、strcat字串连接函数 E、strcmp字串比较函数4、函数 4.1 函数分类(库函数,自定义函数) ---第18课 A.什么是库函数4.2 函数的定义 ----第19课 A、自定义函数4.2函数的调用 ----第20课 A.函数的嵌套调用 B.函数的递归调用 4.4 变量在函数中的作用域 ----第21课 A、局部变量 B、全局变量 C、变量的静态存储与动态存储 D、外部变量说明extern E. 静态变量 static F. 寄存器变量 register G 内部函数和外部函数 小结 5、指针 5.1指针概念 --- 第22课 A、指针变量的类型说明 B、指针变量的赋值 5.2、指针变量的运算 ---- 第23课 A、赋值运算 B、加减算术运算 C、数组与指针的关系 D、数组指针与指针数组 E、二维数组与指针的关系5.3、函数与指针 ---- 第24课 A、函数指针变量 B、函数指针 C、指针函数6、结构与联合与枚举6.1、使用结构体 ---- 第25课 A、结构体的概念 B、结构体的定义 C、结构体的变量 D、使用结构体6.3、结构数组 ---- 第26课 A、结构体数组的定义 B、结构体数组元素的引用6.4、结构指针变量 ---- 第27课 A、指针对结构体变量的访问 B、指向运算符 C、指向结构体数组的指针的应用6.5、结构体与函数 ----- 第28课 A、传递单个成员 B、传递整个结构 C、传递指向结构的指针6.6、联合的定义 ----- 第29课 A、联合体又叫共用体 B、联合变量的说明 C、联合变量的赋值和使用 7、枚举,位运算 7.1 、枚举 ----- 第30课 A、类型定义和枚举变量的说明 B、枚举类型变量的赋值和使用7.2 、位运算 ----- 第31课 A、&按位与 B、 |按位或 C、^按位异或 D、~取反 E、<<左移,>>左移 7.4 位域(位段) ------ 第32课 A.位域的概念 B.位域的使用 7.5 类型定义符typedef ------ 第33课 A.typedef的使用8 预处理 8.0文件包含与宏定义 ------ 第34课 A.#include"" B.#include<> C.#pragma E.无参数宏 F.带参数宏
8.3、条件编译 --------- 第35课 A.#indef,#else,#endif B.#ifndef,#else,#endif C.#if #else,#endif三、VC内联汇编和常用汇编指令 1、数据传送指令 ----- 第36课MOV,MOVSX,MOVZX PUSH,POP,PUSHA,POPA PUSHAD,POPAD XCHG,CMPXCHG 2、算术运算指令------第37课ADD,ADC,INC,SUB,DEC,NEC,CMP,MUL,IMUL,DIV,IDIVCBW,CWD,CWDE,CDQ 3、逻辑运算指令 ------第38课AND,OR,XOR,NOT,TEST, SHL,SAL,SHR,SAR,ROL,ROR,RCL,RCR 4、串指令 -----第39课A、 MOVS,MOVSB,MOVSW,MOVSD CMPS,MOVSB,MOVSW SCAS, LODS,LODSB,LODSW,LODSD STOS, REP,REPE/REPZ,REPNE/REPNZ,REPC,REPNCB、纯ASM汇编演示以上指令 5、条件转移指令第一部分 ----第40课1、无条件转移指令 (长转移) JMP 无条件转移指令 CALL 过程调用 RET/RETF过程返回. 2、条件转移指令 (短转移) 标志位 3.条件转移指令第二部分 ----第41课A、JA/JNBE 不小于或不等于时转移. JAE/JNB 大于或等于转移. JB/JNAE 小于转移. JBE/JNA 小于或等于转移. B、JG/JNLE 大于转移. JGE/JNL 大于或等于转移. JL/JNGE 小于转移. JLE/JNG 小于或等于转移. 4.条件转移指令第三部分 ----第42课AJE/JZ 等于转移. JNE/JNZ 不等于时转移. JC 有进位时转移. JNC 无进位时转移. JNO 不溢出时转移. BJNP/JPO 奇偶性为奇数时转移. JNS 符号位为 "0" 时转移. JO 溢出转移. JP/JPE 奇偶性为偶数时转移. JS 符号位为 "1" 时转移. 5、循环控制指令(短转移) ---- 第43课LOOP CX不为零时循环. LOOPE/LOOPZ CX不为零且标志Z=1时循环. LOOPNE/LOOPNZ CX不为零且标志Z=0时循环. JCXZ CX为零时转移. JECXZ ECX为零时转移. 6、用__declspec(naked)写干净的函数 ---第44课四、MFC编程 1、C++的类和对象 ----第45课A.类的概念B.对象的概念C.封装的优势 2、常用控件(controlS) ---第46课 静态文本(static text) 文本框(text box) 按钮(Button) 组合框 列表框 选项卡(Tab Control) 图片(picture) 3.第一个API函数 ----第47课A.擅长使用MSDNB.参数的分析C.哪些是系统API?4.第一个HelloWorld(平台SDK) ----第48课 A.纯API打造第一个HelloWorld程序 B.分析每个参数的意义 5、一个简陋的打字程序----第49课A、使用资源B、菜单和图标C、接收键盘输入 6、一个简陋的打字程序----第50课D、接收鼠标输入E、设置文本和背景 7、GDI基本绘图1-----第51课A、设备环境B、往标题上写文字C、往别的窗体上写文字 8、与窗体像素绘图相关----第52课A、Windows的颜色和像素点B、获得某个像素颜色值(外挂取色功能用到)C、绘制线条D、绘制网格 9、绘制正弦曲线----第53课A、循环找点B、连接 10、绘制区域 ----第54课 A、绘制区域 B、坐标系统
11、实例小时钟1 ----第55课A、小时钟外观 12、实例小时钟2 ----第56课B、定时器 13、实例小时钟3 ----第57课A、系统时间B、小时钟程序例子 14、网络基础知识----第58课 A、网络基础知识 B、OSI网络七层参考模型 C、各层的意义 15、Winsock接口 ----第59课 A、套接字的概念 B、寻址方式 C、字节顺序 D、使用举例 16、Winsock编程流程(服务端) ----第60课 A、Winsock库的装入,初始化,释放 B、套接字的创建和关闭 C、绑定套接字到指定的IP地址和端口号 D、设置套接字进入监听状态 E、接受连接请求 F、收发数据16、Winsock编程流程(客户端) ----第61课 A、Winsock库的装入,初始化,释放 B、套接字的创建和关闭 C、绑定套接字到指定的IP地址和端口号 D、设置套接字进入监听状态 E、接受连接请求 F、收发数据18、手动打造后门客户端与服务端 ----第62课 A、学以致用 B、利用前两节课的知识,实现后门框架19、动态数据链接库 ----第63课 A、动态数据链接库的概念 B、创建动态数据链接库 C、动态数据链接库的使用20.修改注册表达到自启动 ----第64课A、木马的启动方式B、注册表的基础知识C、如何利用注册表启动木马21、编程实现进程管理 -----第65课A、后门必备的特性B、进程与线程的区别C、编程实现遍历进程与结束进程22、编程实现线程管理 -----第66课A、并发线程的优势B、编程实现并发线程23、手动打造后门cmdshell ----第67课A、正向连接与反弹连接B、管道的概念C、编程实现后门CMDSHELL功能18、一个简单的内存修改器---第68课A、编写测试程序B、搜索内存C、修改内存五、算法实例 1.线性表顺序表 ---第69课A、链表的概念B、线性链表的定义C、编程实现顺序链表2.线性表单链表 ---第70课 A、单链表的概念 B、单链表结构定义 C、编程实现单链表3.线性表双向链表 ----第71课A、哨兵节点B、双向链表的优势C、编程实现双向链表4、栈的实现 ----第72课 A、栈的概念 B、栈的结构 B、栈的编程实现5.栈的应用实例(小人走迷宫) ----第73课A、绘制迷宫B、路线与栈的关系C、小人走迷宫的实现6、队列 -----第74课 A、队列的概念 B、队列的结构 C、队列的编程实现7、循环队列 -----第75课A、解决上节课遗留问题B、使用循环队列C、链表队列8、双队列的实现 -----第76课 A、双队列的概念 B、双队列的结构 C、双队列的编程实现9、串的实现 ----第77课 A、串的概念 B、串的结构 C、串的编程实现 10、树 ---第78课 A、树的概念 B、树的结构 C、树的编程实现 11、二叉树 ---第79课 A、二叉树的概念 B、二叉树的结构 C、二叉树的编程实现 12、树的使用---第80课 A、完善78课代码 B、实现创建与遍历 13、二叉树的使用---第81课A、完全二叉树B、满二叉树C、二叉树的应用实例 14、图 ---第82课 A、什么是图 B、图的结构 C、图的编程实现六、代码的升级与转换1、vc代码升级---第83课2、delphi与VC代码之间的转换---第84课七、逆向技术1.逆向热身 ---第85课A、逆向工具B、原理性工具C、实战破解保护机制2.IDA逆向---第86课A、IDA逆向上节课代码3、动态调试技术 ---第87课A、OllyDbg(OD)调试器 B、界面介绍与配置C、基本操作D、实战破解TraceMe小程序4、逆向程序,还原算法---第88课A、翻译反汇编每条语句B、分析程序流程C、还原C语言代码5、OD中的各种断点---第89课A、INT 3断点B、硬件断点C、内存断点D、内存访问一次性断点E、消息断点F、条件断点G、条件记录断点6、静态分析 ---第90课A、静态调试之王--IDA B、用IDA分析程序架构流程 C、分析程序算法D、完成程序序列号验证 7、未公开的技术---第91课A、用DUMPBIN转储文件B、动态分析DLL文件C、用OD翻译未公开的函数D、将RtlInitializeGenericTable还原成C语言8、注册机的制作 ---第92课A、明码比较软件的攻击B、对算法逆向并写注册机C、不理解细节也能写注册机9、去掉讨厌的NAG窗口 ---第93课A、使用资源工具找到目标窗口B、逆向程序绕过NAG窗口10、去掉时间与菜单功能限制 ---第94课11、拆解KeyFile文件保护 ---第95课八、歪挂技术1.歪挂介绍 ---第96课A.外挂的种类B.外挂的原理2.寻找窗口 ---第97课A.FindWindow找到窗体B.编程实现3.模拟鼠标---第98课A.mouse_eventB.编程实现鼠标模拟4.模拟键盘 ---第99课A.k_eventB.SendMessageC.编程实现键盘模拟5.CALL的调用 ---第100课A.反汇编程序B.找到相关函数C.实现远程调用 6666666666 看看,不知道能不能看懂 看看了!!!!!!!!!!! 666666666666666666 VC++基础视频 6666666666666666 学习学习 学习下 能看懂就好!