自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

翻译 IA-32和x86-64调用规约

本篇文章总结了编写x86汇编语言必须遵守的一些约定1、易变(Volatile)和非易变(Non-Volatile)寄存器表列举了Visual C++易变和非易变寄存器,函数如果要使用非易变寄存器的,那么必须要保存非易变寄存器的内容,win32函数使用push 和 pop 指令来保存非易变通用寄存器的内容,win64函数除了要保存通用非易变寄存器的内容外,还需要保存XMM非易变寄存器。在函数内部,w...

2018-04-24 20:22:09 697

原创 IA-32中的数值运算

1、IA-32中的整数运算整数加减法运算内存中整形数是以补码的形式存储在内存中:原码表示范围:负数部分:1111 1111(-127)~1000 0000(-0);正数部分:0000 0000(+0)~01111111(127)补码表示范围:负数部分:1000 0001(-127)~11111111(-1);正数部分:0000 0000(+0)~0111 1111(127)其中,原码中的1000 ...

2018-04-18 09:38:36 1080

原创 c/c++可变参数函数

可变参数函数参数数量没有固定的数量,通常在传递参数的时候设置第一个参数标识传递参数数量;或者是设置最后一个参数为结束位来标识参数传递结束。对于可变参数函数,头文件stdarg.h宏定义了几种运算符帮助程序员快速获取可变函数的参数。1.对于可变参数函数可以使用的几种宏定义可变参数函数定义:    void test(int a,...);1、va_list    符号别名定义:typedef cha...

2018-03-22 21:32:41 294

原创 预处理运算符

预处理器运算符作用在预处理阶段,在#define中处理字符时使用。1、#:字符串化运算符对于需要转义的字符如“或者\,宏处理运算符会自动插入到字符前对于用空格隔开的字符串,宏处理过程会自动拼接各个字符#define fb(x) #x "bc"fb(a); 结果为字符串abcfb('a');结果为字符串'a'bc2、#@,字符化运算符 宏处理会将该运算符实参处理为单个字符#define fc(x) ...

2018-03-16 15:42:53 347

原创 关于结构体内存对齐方式的总结(#pragma pack()和alignas())

最近闲来无事,翻阅msdn,在预编译指令中,翻阅到#pragma pack这个预处理指令,这个预处理指令为结构体内存对齐指令,偶然发现还有另外的内存对齐指令aligns(C++11),__declspec(align(#))(Microsoft专用),遂去探究两者之间的不同点。1、#pragma pack这个指令为预处理指令,所谓与处理指令执行在程序的预处理阶段,该指令对应着编译选项/Zp,可以在...

2018-03-07 14:39:46 2968

转载 常见visual stdio快捷键

转帖地址:http://blog.csdn.net/liuqiyao_01/article/details/47404165项目相关的快捷键Ctrl + Shift + B = 生成项目Ctrl + Shift + N = 新建项目Ctrl + N = 新建文件快速生成代码输入if、try、for 后,点击两次tab = 生成默认代码方法折叠、展开Ctrl + M + L  = 快速展开一个类中的...

2018-02-03 20:43:34 513

原创 理解数组和引用作为参数和返回值传递

  根本:数组不能拷贝,所以函数、返回值传递数组变量只能通过数组的指针或者是引用   一、函数返回值问题:指针(注:函数的返回值不能是数组,只能是数组的指针或是引用)1、函数返回指针(包含动态数组)声明:int * retArray(int i);声明:int * retArray(int i)[10];函数返回数组,内部存储为基本数据类型的指针注:此种定义是错误的,函数返回值为数组是被禁止的,只...

2018-02-03 20:01:53 5524

原创 理解c++函数指针

一、函数指针(通过参数与返回值来确定一个函数指针)         1、直接声明             int (*pf)(string& a,string & b);   //定义pf指向参数为a,b,返回值为int类型的函数             int * pf(string&a,string &b);      //括号必不可少,此时声明了一个pf函数,返回值为int *型

2018-02-03 19:44:30 252

原创 理解C++复杂数组

带括号的和不带括号的变量阅读顺序:       带括号:由括号内向外理解       不带括号:由右向左理解一、静态数组  1、指针数组:数组内存储的是指针定义:定义即分配空间,基本数据变量和指针皆准int * point[constant]; //constant必须在编译阶段指定初始化:需要给每个元素赋地址值for(int i=0;i<constant;i++) { ...

2018-02-03 19:33:15 454

原创 辨析c++的常量指针、指针常量,引用

本篇博文主要记录近日学习的常量指针、指针常量和引用

2018-01-01 20:50:33 297

原创 网络攻防技术与实践笔记-TCP/IP网络协议攻击

本文主要介绍网络协议层面的攻击技术

2017-08-20 22:28:38 2743

原创 网络攻防技术与实践笔记-网络嗅探

本文主要介绍网络嗅探和协议分析

2017-08-19 22:20:31 720

原创 网络编程(基于winsocket)-- 常用函数介绍(二)

此篇文章继续记录winsocket的常用函数

2017-07-05 21:28:10 448

原创 域名管理与注册机制

本文主要介绍DNS和IP地址基础设施管理与注册机制互联网是分布式管理控制的信息网络系统,但对于IP地址和DNS是由一套层次管理机构来负责统一管理的。ICANN是一家具有全球代表性的互联网名称和数字地址分配机构的非营利国际组织。主要负责IP地址空间分配、DNS指派、协议标识符指派、端口号确定、通用顶级域名以及国家和地区级域名系统的管理、以及根服务器系统的管理。

2017-06-30 10:34:19 1648

原创 网络编程(基于winsocket)-- 常用函数介绍(一)

本文主要记录网络编程中经常用到的函数,作为学习的笔记

2017-06-28 10:09:02 2628

原创 网络攻防技术与实践笔记-信息收集技术手段

网络攻防技术与实践笔记-信息收集技术手段

2017-06-26 21:51:57 3675

原创 网络编程(基于WinSocket)---基础知识

winsocket网络编程基础知识

2017-06-21 21:34:57 1028

原创 回溯法解决八皇后问题(java实现)

算法课上需要用回溯法解决八皇后问题,八皇后问题就是国际象棋棋盘(8*8)上摆放8个棋子,同一横行、竖行、斜线上不能摆放棋子,问有多少种摆法。 回溯法是五大常用算法之一。

2017-06-06 08:26:16 2077

原创 回溯法解决八皇后问题(java实现)

算法课上需要用回溯法解决八皇后问题,八皇后问题就是国际象棋棋盘(8*8)上摆放8个棋子,同一横行、竖行、斜线上不能摆放棋子,问有多少种摆法。 回溯法是五大常用算法之一。回溯法的基本思想是:          1、 在解空间树中,从根节点出发,采用深度优先搜索的思想来遍历解空间树。每一次遍历节点时都判断当前                 节点是否为合法解,如果为合法解,那么继续

2017-06-04 18:29:23 1355

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除