调用汇编代码符号
前言 这里遇到了一个相关的CTF习题,看到其WP中的思路不错,特别学习一下
题目 其是picoCTF的asm4,题目要求获取调用asm4("picoCTF_a3112")的结果,其中附件代码如下所示 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758asm4: <+0>: push ebp <+1>: mov ebp,esp <+3>: push ebx <+4>: sub esp,0x10 <+7>: mov DWORD PTR [ebp-0x10],0x246 <+14>: mov DWORD PTR [ebp-0xc],0x0 <+21>: jmp 0x ...
深入了解const
前言 之前在学习C++的时候,对于const等相关概念了解的不是很清楚,最后在使用时就很痛苦😖 这次彻底的总结一下const相关的知识点
阅读变量声明 实际上,const位于变量声明的不同位置,会产生不同的作用。因此,首先我们需要学会如何阅读变量的声明语句,从而了解变量的具体类型,获取const修饰的对象,才能知道其作用。
这里我们依照由右至左规则,可以有效的分解变量的类型。
整个由右至左规则如下所示:
从变量名称开始
向右依次列出所有的关键词,直到遇到不匹配的右括号或者结束停止
向左依次列出所有的关键词,直到遇到不匹配的左括号或者结束停止
如果因为括号停止,则跳出括号,重新执行步骤2.
这里我们举一个比较有挑战性的例子
1char (*(*x())[])();
下面给出按照上述分析的步骤
根据步骤1,找到变量名称x,即 char (*(*x())[])();
根据步骤2
找到(),即 char (*(*x())[])();,因此为无参函数
右边遇到不匹配右括号,结束
根据步骤3
找到*,即 char (*(*x())[])();,因此返回值为指针
左边遇到 ...
manjaro配置
“简单介绍manjaro的安装和配置"
基于Butterfly主题的hexo静态博客
简单介绍基于Butterfly主题的hexo静态博客的搭建