- 博客(19)
- 收藏
- 关注
原创 C逆向-常量是什么
常量是在程序运行之前就被静态地存储在内存中的。这些常量在程序启动时被初始化,然后一直存在于程序的整个生命周期内,它们的值是固定的且无法被修改。因为全局const常量存储在程序的只读内存区域,所以想修改全局const常量就需要先修改该物理页的属性,修改成可读可写。常量必须在声明时进行初始化,且其值在后续程序执行期间不可改变。
2024-01-20 17:21:59
870
原创 C逆向-变量是什么
具有初始值的全局变量,其值在链接时被写入创建的PE文件中,当用户执行该文件时,操作系统先分析这个PE中的数据,将各节中的数据填入对应的虚拟内存地址中.这时全局变量就已经存在了,PE的分析和加载工作完成后,才开始执行入口点的代码.因此全局变量不受作用域的影响,在程序中的任何位置都可以被访问和使用.全局变量在内存中的地址顺序是先定义的变量在低地址,后定义的变量在高地址.有此特性即可根据反汇编代码中全局变量的所在地址,还原出高级代码中全局变量定义的先后顺序,更进一步接近源码.定义的范围,成为块级作用域。
2024-01-20 17:21:11
892
原创 C逆向-汇编眼中的函数
裸函数是一种不使用函数预定义的函数框架(prologue)和函数结束的代码(epilogue)的函数,需要自己处理函数入口和出口的任务,还有保持堆栈的平衡等等。
2024-01-20 17:17:51
760
原创 C基础-for循环语句
循环是一种常用的循环结构,它可以通过控制循环变量的初始值、判断条件和循环迭代来控制循环的执行次数。循环输出 abcdef。循环输出0-1000。
2024-01-19 10:28:55
385
原创 C基础-while语句
条件需要是bool类型,首先会判断条件是否成立,如果成立的话,就会一直执行循环内的代码。的区别就是会先执行一遍循环内的代码.判断条件是在语句的尾部.这一行的意思就是取一个0-100的随机数。
2024-01-19 10:28:19
556
原创 C基础-三目表达式
如果是一个简单的需要判断的东西,可以用三目运算符,更加的精简。如果表达式一成立,返回表达式二,否则返回表达式三。表达式二 : 表达式三。
2024-01-19 10:24:43
632
原创 C基础-前置递增(递减) 与 后置递增(递减)
前置递增如果在复合表达式里,首先会先计算自己,也就是递增,然后才会计算其他的\。前置递减如果在复合表达式里,首先会先计算自己,也就是递减,然后才会计算其他的。后置递减如果在复合表达式里,首先会先计算其他的,最后才会计算到自己。后置递增如果在复合表达式中,首先先计算其他的,最后才会计算自己。
2024-01-19 10:19:09
693
原创 C基础-布尔类型 bool
如果调用布尔类型,需要调用"stdbool.h"头文件。布尔类型 bool (逻辑型)假 == false == 0。真 == true == 1。
2024-01-19 10:17:13
1975
原创 C基础-字符串
在C语言中,没有字符串类型,字符串一定是char类型数组,但是字符型数组不一定是字符串。字符串的长度是不确定的,因此需要一种方式来标识字符串的结束位置。这就是为什么字符串以。在C语言中,字符串是由字符组成的字符数组。可以使用字符数组来存储和操作字符串。需要注意字符串末尾必须有一个空字符。(空字符)作为结束符的原因。,以表示字符串的结束。
2024-01-19 10:15:26
403
原创 C基础-进制,字节
7FFF 就是32767. +1后进入负数区 负数区上边是最小的值,就是-32768。两个字节 = 16个比特(位)一个字节=8个比特(位)
2024-01-19 10:13:27
487
原创 C基础-浮点型(实型)
双精度浮点型 double 8Byte 64Bit 15`16可表示有效范围。单精度浮点型 float 4Byte 32Bit 7可表示有效范围。(如果定义一个float类型的数值,需要在最后边加一个f,否则会当做double来处理)长双精度浮点型 long double 8Byte 64Bit。注意这里说的有效范围是所有书,包括大于1的那个位置。(注意: 字母L是大写)
2024-01-19 10:12:17
373
原创 C基础-标准输出&标准输入
需要注意的是,如果使用scanf_s储存输入的字符串,需要指定字符串长度,确保读取过程中,不会发生缓存区溢出。注意待打印项前边要加个&(and符),也就是取地址。scanf(“格式化字符串”,& + 待打印项)如果想使用scanf,需要先使用下边的命令。使用scanf_s的话,不需要提前声明。变量定义: 数据类型 变量名 初始值。scanf_s 标准输入(安全)scanf 标准输入命令。
2024-01-19 10:08:33
429
原创 C基础-变量常量
宏常量#define 常量名 初始值这里需要注意的 常量名 空格 值,是空格,不是等于,也没有分号修饰的变量const 数据类型 变量名 = 初始值;
2024-01-19 10:07:05
368
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人