上一页 1 2 3 4 5 6 7 ··· 24 下一页
摘要: API和系统调用的区别 都是函数 API提供用户态服务或者内核态服务 系统调用通过软中断进入内核态 API可能调用几个系统调用 系统调用也是一种API int指令 用户态进程发出int $0x80指令(老版本Linux中,从用户态切换到内核态的唯一方法) 系统调用号放入eax寄存器 根据idtr寄存 阅读全文
posted @ 2021-02-08 22:18 肥斯大只仔 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 承接已有博客 task_struct 结构体内包含的几种重要信息 thread_info:进程的基本信息 mm_struct:指向内存区描述符的指针 fs_struct:当前目录 files_struct:指向文件描述符的指针 signal_struct:所接收的信号 pid:每个进程都有唯一的,内 阅读全文
posted @ 2021-02-05 17:47 肥斯大只仔 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 开篇总结 其实《Effective C++》对于现在的我来说还是有点晦涩,有一些条款看起来又干又绕,所以这里只总结一下自己能理解、和对自己有用的部分条款 条款4:确定对象被使用前已先被初始化 类需要构造函数才可以初始化成员变量。 构造函数用初始化列表。如果在构造函数体内进行的话,是赋值操作。(但是v 阅读全文
posted @ 2021-01-29 14:49 肥斯大只仔 阅读(210) 评论(0) 推荐(0) 编辑
摘要: shared_ptr template <typename T> class Sptr { public: //默认构造函数 Sptr() :ptr(nullptr), counter(new int(0)) {} //构造函数 Sptr(T* pIn) :ptr(pIn), counter(new 阅读全文
posted @ 2021-01-16 01:04 肥斯大只仔 阅读(334) 评论(0) 推荐(0) 编辑
摘要: 参考B站侯捷 new的分解动作 new关键字调用operator new operator new调用malloc 强制转换 调用构造函数(这也是为什么malloc不能申请包含指针的类内存的原因) PS:new关键字是表达式,固定形式;operator new才可以重载 delete的分解动作 de 阅读全文
posted @ 2021-01-15 00:24 肥斯大只仔 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 题目 在一个由小写字母构成的字符串 s 中,包含由一些连续的相同字符所构成的分组。 例如,在字符串 s = "abbxxxxzyy" 中,就含有 "a", "bb", "xxxx", "z" 和 "yy" 这样的一些分组。 分组可以用区间 [start, end] 表示,其中 start 和 end 阅读全文
posted @ 2021-01-05 07:44 肥斯大只仔 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 题目 实现获取 下一个排列 的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。 如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。 必须 原地 修改,只允许使用额外常数空间。 示例 1: 输入:nums = [1,2,3] 输出:[1,3,2] 示例 2: 输入 阅读全文
posted @ 2021-01-04 00:10 肥斯大只仔 阅读(45) 评论(0) 推荐(0) 编辑
摘要: 题目 给你一个链表和一个特定值 x ,请你对链表进行分隔,使得所有小于 x 的节点都出现在大于或等于 x 的节点之前。 你应当保留两个分区中每个节点的初始相对位置。 示例: 输入:head = 1->4->3->2->5->2, x = 3 输出:1->2->2->4->3->5 思路 思路很简单, 阅读全文
posted @ 2021-01-03 17:23 肥斯大只仔 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 题目 给定一个二叉树,原地将它展开为一个单链表。 例如,给定二叉树 1 / 2 5 / \ 3 4 6 将其展开为: 1 2 3 4 5 6 思路 用个prev记录就行了 代码 class Solution { public: void flatten(TreeNode* root) { if(!r 阅读全文
posted @ 2021-01-01 22:10 肥斯大只仔 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 题目 我们提供了一个类: public class Foo { public void first() { print("first"); } public void second() { print("second"); } public void third() { print("third") 阅读全文
posted @ 2020-12-31 16:22 肥斯大只仔 阅读(94) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 24 下一页