1.局部变量 在任何一个函数内部定义的变量(不加static修饰符)都属于这个范畴。编译器一般不对普通局部变量进行初始化,也就是说它的值在初始时是不确定的,除非对其显式赋值。 普通局部变量存储于进程栈空间,使用完毕会立即释放。 静态局部变量使用static修饰符定义,即使在声明时未赋初值,编译器也会 ...
分类:
其他好文 时间:
2021-06-24 17:55:50
阅读次数:
0
一、单继承情况 1.虚函数表、指向虚函数表的指针以及类型信息: ①为了实现多态,我们需要知道一个指针或引用的真实类型以及其所调用函数实例的位置。所以编译器会创建一个虚函数表,里面存放类的类型和类函数的实例地址,并且在类内存中加入一个指向虚函数表的指针vptr。(为什么不放到类中?导致类的内存不固定, ...
分类:
其他好文 时间:
2021-06-24 17:50:51
阅读次数:
0
结论 配置demo: location xxx { root yyy } 浏览器访问 xxx,实际访问的是 yyy/xxx浏览器访问 xxx/abc.html,实际访问的是 yyy/xxx/abc.html浏览器访问 xxx/ccc/abc.html,实际访问的是 yyy/xxx/ccc/abc.h ...
分类:
其他好文 时间:
2021-06-24 17:47:20
阅读次数:
0
编译型语言:在程序运行之前,有一个单独的编译过程,将程序翻译成机器语言,以后执行这个程序时,就不用再进行翻译了。(C,C++等,需要经过编译(compile)、链接(linker)这两个步骤) 解释型语言:是在运行的时候将程序翻译成机器语言,所以运行速度相对于编译型语言要慢。有良好的平台兼容性,在任 ...
分类:
编程语言 时间:
2021-06-24 17:46:19
阅读次数:
0
目的 搞清楚一此比较特殊的C代码对应的汇编语言是什么。 在实际机器中的表现形式是什么样的。 方法 通过查看编译器生成的汇编代码 调试时查看反汇编代码 常用操作 将常量装入REG 将内存里数据装入REG 将REG里数据装入内存 练习 将简单的C赋值语句转为汇编代码 内存地址计算 内存寻址实例 栈操作 ...
分类:
其他好文 时间:
2021-06-23 17:18:44
阅读次数:
0
uint32 ICACHE_FLASH_ATTRuser_rf_cal_sector_set(void) 用户必须在程序中实现此函数,否则编译链接时会报错。但?用户程序?无需调?用此函数, SDK底层会调?用它,将 RF_CAL 参数保存在?用户指定的 Flash 扇区?里里,这将占?用?用户参数区 ...
分类:
系统相关 时间:
2021-06-23 17:06:05
阅读次数:
0
Linux Nginx日志切割脚本 版本 操作系统版本IP版本 Centos 172.21.3.220内网 7.x Nginx日志切割脚本 #!/bin/bash #设置日志文件存放目录 logs_dir="/usr/local/nginx/logs" store_dir="/data/backup ...
分类:
系统相关 时间:
2021-06-23 17:02:55
阅读次数:
0
6.22Java多线程happenbefore 编译器和CPU会尝试重排指令使得代码更快地运行 发生情况: 代码间没有直接联系,没有依赖 这样就会发生指令重排a 步骤 拿到指令,进行编译,放入寄存器 >fetch 解码指令,从寄存器中拿值,从主存拷贝到工作内存 >copy 执行选项 >excutor ...
分类:
移动开发 时间:
2021-06-23 17:01:24
阅读次数:
0
内存模型的基础 内存模型的抽象结构 共享变量 堆里面的对象、数组元素,静态变量(方法区) 局部变量 不会有线程可见性的问题,不会受内存模型的影响 指令重排 编译器优化的重排序 不改变单线程语义的前提下重新安排编译的顺序 --编译器 指令级并?的重排序 现在的处理器采用的技术,多条指令重叠进行,只要两 ...
分类:
其他好文 时间:
2021-06-23 16:42:19
阅读次数:
0
一、apk文件逆向 没有接触过app开发,临时学习: 1.apk文件逆向工具:jadx 、jeb 、jd-gui 选择jadx的gui工具,反编译apk文件(代码阅读为请教tx,app开发需要补课) 在主活动中查看主要的代码, 大致逻辑为在主活动中通过checkflag()函数对用户的输入进行比较, ...
分类:
其他好文 时间:
2021-06-23 16:28:03
阅读次数:
0