零基础学习C++系列课程(二) 持续更新中

目录

项目一、黑客攻击系统-功能菜单

第 1 节:项目介绍

第 2 节:项目需求

第 3 节:项目实现

 3.1执行方式 1(开发时使用)

 3.2执行方式 2

 3.3执行方式 3

 3.4执行方式 4

第 4 节:项目精讲

4.1编程的本质

4.2极简的 C/C++ 语言语法规则

4.3头文件的使用

4.4程序从哪里开始执行-main 函数

4.5使用其他函数

4.7 让计算机说话:cout 和 printf 的使用

4.8 韩信谋反解密-命名空间的使用

4.9 软件是怎样炼成的: C++程序的编译过程

4.10 血的教训:程序的注释 

4.11 常见错误总结

4.12 计算机英语加油站

第 5 节: 项目拓展

5.1 拓展 1:开发图形登录菜单

5.2 拓展 2: 宅男福利-在控制台上跳极乐净土(音频版)

第 6 节: 项目修炼

6.1 编程思维修炼

6.2 职场修炼

6.3 逼格提升

第 7 节: 项目练习


项目一、黑客攻击系统-功能菜单

1 节:项目介绍

为看书困难的小伙伴推荐视频教程:百度 盘 提取码:r59a

黑客/骇客/红客

  • 黑客: 精于计算机技术的计算机专家或程序员(有伤害能力,但是不做任何伤害)
  • 骇客: 恶意或非法地破解、破坏程序、系统及 络安全的人, 又称“黑帽黑客”。
  • 红客,为捍卫中国主权而战的黑客(或骇客)

实际上,界限非常模糊,常常统称为黑客. 臭名昭著(声名显赫)的[希拉里邮件门]黑客-金姆·多特康姆

汪正扬,中国最小黑客,13岁向360提交多个系统漏洞

 中美黑客大战

中美撞击事件(王伟在中国南海领空牺牲)引发”中美黑客大战” 中国红客与美国黑客激烈交战. 中国600多个 站被攻陷,美国92个 站陷落. 2001年5月4日,中国红客攻陷美国白宫 站,白宫 站被迫关闭2小时.

说明:为提升中国南海的国防实力,研发了广州军区南海无线微波系统. 实现了南海主要岛屿在恶劣气候下的稳定通信,该项目的主体架构将在本课程的后续项目中带大家学习.

黑客攻击系统拓扑图

 开发要求

配置要求:

1. 系统要求: windows7/8/10 系统, Mac 系统

2. 开发工具 : visual c++ 2015 Express, 或其他 IDE 推荐配置: 1. 系统要求 : windows7/8/10 系统 2. 开发工具 : visual c++ 2015 Express 或其他 VS 版本 项目说明 1. 直接从项目需求入手 , 搞清需求后 , 直接开发项目 , 在项目实现中学习 C++ 2. 通过 6 个子项目迭代代码 , 实现黑客攻击功能 .

2 节:项目需求

黑客打开这个攻击系统后,首先看到的就是一个“功能菜单”。 以便让黑客选择所需要的功能。 假设需求如下: 1. 404 攻击 2. 站篡改攻击 3. 站攻击记录 4. DNS 攻击 5. 服务器重启攻击

3 节:项目实现

创建一个空项目 CP1 添加文件 admin.c

 3.1执行方式 1(开发时使用)

 使用调试模式执行:

1、选择 Debug 模式(默认);2、单击开始按钮

 3.2执行方式 2

 直接双击运行调试模式下的可执行文件:

 3.3执行方式 3

使用发布模式:

 3.4执行方式 4

 直接运行发布模式下编译后的可执行文件:

发布模式和调试模式的区别 调试模式中会生成很多调试信息,便于排查错误,但是对执行效率有影响。 确认程序正确后,使用发布模式生成可执行文件。

4 节:项目精讲

4.1编程的本质

电影:骇客帝国

完全由程序控制的虚拟世界

 电影《源代码》:多个平行世界

 已投入使用的家庭服务机器人:

编程的本质      “程序员”预先编写一系列命令,控制程序执行特定的任务。      “程序员”就是“上帝

体验编程本质:控制! 控制! 本质就是控制!          失去控制非程序有 Bug… 计算机时钟 BUG 导致美军海湾战争中,唯一过百的伤亡(死 28 人,伤 100 余人) BUG 事件:1991 年 2 月,美军的爱国者反导弹系统失效,未能拦截伊拉克的飞毛腿导弹,宰 赫兰基地被炸毁,场炸死 28 个美国士兵,炸伤 100 多人,造成美军海湾战争中唯一一次伤 亡超过百人的重大损失。 BUG 分析:爱国者反导弹系统,每工作 1 小时,系统时钟延时 3ms 左右,当时已经连续工作 了 100 小时,延时达到三分之一秒!飞毛腿导弹足以击中目标了! 需要关机重启,战事太急,没时间关机 :-( 重要的事情再说一遍: 编程,就是使用程序员的思维,来控制计算机做事情。 编程思维修炼中的“编程闯关”,就是让玩家自己写代码,来控制游戏中的 Hero 打怪、捡 宝、闯关。

4.2极简的 C/C++ 语言语法规则

 不做孔乙己,要做说干就干的平头哥

仅记原始规则,把握编程的本质 原始的规则: 1. 各“语法单位”(组成部分)使用任意个(至少 1 个)分隔符隔开。     分隔符有:空格,或 tab 键,或换行符。       int main(void)        int        main(void)       都是合法的。       intmain(void)       是非法的。 2. 必须使用英文输入法输入 (仅双引 括起来的“字符串”中可使用中文) 3. 每条代码的后面使用 ;表示这个指令代码结束。 4. #include 等预处理指令 , 必须一条指令占一行 其他规则不需记忆,在后面的项目实践中掌握。 以下代码也能编译运行

以上风格的代码, 常见于 价低但是由要求给源码的外包软件中.(目的:让人看不懂) 

 高逼格的代码: (推荐)

无论如何 , 只要遵循最基本的原则 , 代码就是合法的 , 就能编译执行 . 懂得最基本的规则之后 , 再追求优雅风格的代码 ( 高逼格风格 ) 再次强调: 不要刻意记忆 C++ 的语法规则(记也没有意义) 初学时,仅掌握最基本的语法规则即可!

4.3头文件的使用

粉丝见蒙面偶像 

 拜年走亲戚,分不清七大姑、八大姨…

原因 : 各种因素导致的互不认识! 程序如戏 程序中有很多元素 (std::cout, system), 都是一个个演员 但是他们之间都互不认识 , 但是却要一起合作, 强行编译 , 就会导致错误 !

得预先介绍他们, 知道他们各自的名 和用法

解决方案 : 包含相应的头文件 ! ( 头文件中 , 含有相关元素的介绍说明 ) std::cout 头文件 : iostream system 头文件 : Windows.h #include 表示把文件 Windows.h 中的所有内容拷贝 ( 复制 ) 到“这里”。 头文件的查找路径 #include 表示,从编译器默认的路径中去找文件 stdio.h 这个默认路径,取决于编译器。不同平台下不同编译器的路径都不相同。 这个默认路径下,已经包含了 c 标准库所需要的所有头文件。 使用 C++ 标准库的头文件使用该方式。 #include “mytest.h” “” 表示从当前目录下寻找文件 mytest.h 如果在当前目录下找不到,再从编译器默认的路径中查找。 使用用户自定义的头文件使用该方式。 头文件的位置 要求放在文件的最前面。 #include 的作用是,把相关的声明拷贝到这个文件内, 所以都习惯把#include 放到文件的最前面。 如果放到后面,当 include 之前出现了相关的函数,就会有问题,例如

4.4程序从哪里开始执行-main 函数

人生,就是一个程序。在不同的阶段,做不同的事。 每件事,就是一个函数。 每个人的人生都不相同, 以不同的顺序,做不同的事(相当于调用不同的“函数”), 但是都是从“出生”开始 .

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年9月17日
下一篇 2022年9月17日

相关推荐