区块链基础
区块链基础(一)初步理解智能合约(二)代码结构和合约特性(三)控制结构(四)类型(五)字面量和内置单位、函数(六)应用二进制接口(七)特殊函数(八)合约的高级特性(完)
区块链 1.0(基于比特币的说明)
内容基本来自这个网站: https://learnmeabitcoin.com/ ,本人大一初学时一边啃一遍记录笔记,于是形成了这一篇文章。
指的是一个不可篡改的,分布式,去中心化账本,没有谁是中央登记员,因为大家都是中央登记员,大家的账本写的东西都一模一样,记着大家所有人的资产信息。(这大概是我们对它的基本认知)
区块链记账,会把上一次交易的账页信息(交易序号,记账(交易)时间,交易记录)作为原始信息,hash 之后的值与本次的账页信息结合在一起,就成了一个区块;(这个数据结构类似于链表——简单地说,既能够存储来自上一个节点的数据,也能够连接下一个节点)
继续推导,下一个区块也会包含本次交易的账页信息 hash 值,和下一次交易的账页信息,这样一来,每一个区块都包含着上一次的账页信息,根据 hash 算法的雪崩效益以及不可逆向递推性质,从而达到区块链本身设计之初要达到的:不 ...
Linux 基础
Linux 的基本特点
Linux 严格区分大小写
Linux 中所有内容以文件形式保存,包括硬件设备
Linux 不靠扩展名区分文件类型(虽然有部分文件有后缀,但是并不是给电脑看的)
Linux 中所有的存储设备都必须在挂载之后才能使用
目录命令
ls(list)
-a 显示隐藏文件
-d 显示目录信息
-h 人性化显示文件大小
-i 显示 inode 号(相当于地址)
root 模式下才有不同颜色高亮,以后看能不能调。
查看目录的隐藏文件:
12la# 等同于ls -a
查看目录详细信息(常用来看看权限):
1ls -dl
查看文件详细信息(常用来看看权限):
12ll# 等同于 ls -l
cd(change directory)
~ home
-上次所在目录
. 代指当前目录
… 代指上级目录
mkdir(make directories)
-p 一级一级创建新目录
1mkdir -p 目录路径
rmdir(remove empty directories)
一般不用这个。
只能删除空目录
-p 一级一级删除目录
tree(list contents of ...
C语言基础
C语言基础乘法逆元信息安全算法基础操作系统基础x86汇编基础信息论与编码
变量存储
全局变量与局部变量
全局变量的特点:
程序块之外的算全局变量(常常放在 main 函数之前),但是有先后识别顺序。
全局变量适合给函数直接传参,但是程序运行的时候都占内存,而且每一部分具有依赖性,迁移性差。
大量的全局变量使得牵扯太多,可读性差。
extern 标识符:
标识着这个变量或者函数要在其他的文件中寻找,即在别处定义,此处需要引用,在 gcc 编译中跨文件变量的使用很有用。
extern 外部变量声明(要区分定义和声明),忽视读取先后顺序。
12extern int a,b;//这里不分配内存,是标志着后面会定义,定义的时候分内存。
extern 在局部中声明,只对这一部分的代码块有效。
如果和代码块的局部变量重名,那么这个代码块不影响这个全局变量,按照里面的局部变量处理。
全局变量跨文件引用,默认是不支持的,但是可以在本文件里声明了 extern 后,就不会分配内存,可以引用了。(注意,这样交叉使用,可读性会很差)
变量的存储和使用
静态存储方式和动态 ...