Go程序如何编译 Go程序如何编译1234567package mainimport "fmt"func main(){ fmt.Println("hello world")} go build -n 编译过程 词法分析 将源码翻译成Token Token是代码中最小的语义结构 句法分析 Token序列经过处理,变成语法树(SST) 语义分析 类型 2022-12-17 go
runtime Runtime 就是程序的运行环境 Java:Java虚拟机 JavaScript:浏览器内核 Go的Runtime特点 go没有虚拟机概念 Runtime作为程序的一部分打包进二进制产物 Runtime随用户程序一起运行 Runtime与用户程序没有明显界限,直接通过函数调用 Go的Runtime能力 内存管理能力 垃圾回收能力(GC) 超强的并发能力(协程调度) Go的Runtime其 2022-12-17 go
C++异常类型以及多级catch匹配 C++异常类型以及多级catch匹配try-catch使用方法 12345try{ //}catch(exceptionType variable){} 2022-11-30 C++
方法 方法重点:面向对象编程(OOP:Object Oriented Programming) 不同于C++和Java的Class类写法, 1.方法声明12345678910111213import "math"type Point struct { X, Y float64}func Distance(p, q Point) float64 { ret 2022-11-17 go
最大子序和 最大子序和给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 子数组 是数组中的一个连续部分。 示例 1: 123输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。 示例 2: 12输入:nums = [1]输出:1 示例 3: 12输入:nums = [5, 2022-11-12 数据结构
验证栈序列 验证栈序列给定 pushed 和 popped 两个序列,每个序列中的 值都不重复,只有当它们可能是在最初空栈上进行的推入 push 和弹出 pop 操作序列的结果时,返回 true;否则,返回 false 。 方法一:pushed和popped的性质: pushed中元素互不相同 popped和pushed长度相同 popped是数组pushed的一个排列 结论: 栈内无重复元素 如果pu 2022-11-08 数据结构
Uninformed Search Artificial Intelligence SearchAgents that Plan Ahead Reflex Agent: Choose action based on current percept May have memory or a model of the world’s current state Do not consider the future consequen 2022-11-02 CS188
Network Programming PartII Network Programming PartIISocket Interface This giant block diagram shows all the activities invloved in setting up and running both a server and a client. The idead is you need to the server need 2022-10-25 CSAPP
寄存器 寄存器 一个字型数据可以存放在内存之中 可以由2个连续的地址内存单元组成 高地址:内存单元存放字型数据的高位字节 低地址:内存单元存放字型数据的低位字节 ds段地址寄存器访问数据用的 12mov al,ds:[0] ;mov移动指令CPU中的AL寄存器,内存地址为ds:[0] 0为偏移地址,方括号是ds+0组合成的段地址,方括号内为得到的内容;cpu从段寄存器内读取了8位数据 错误修改ds的方 2022-10-19 汇编语言