Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
Linux--malloc、申请空间、申请是否成功、4G虚拟空间分布、父子进程相关代码及相关命令
目录 1 malloc申请空间 2 申请1G或者更大空间 到底能不能成功 3 32位操作系统进程的4G虚拟空间分布 4 父子进程 1 malloc申请空间 进程在执行的过程中 malloc申请空间 不使用时 没有free就会出现内存泄漏 如
Linux命令
代码运行结果
新手入门
Linux
运维
C++面试题之继承
目录 设计一个类型 不能在外部环境中创建该类的对象 设计一个不能被继承的类 设计一个不能被继承的类 但可以在外部环境创建该类型的对象 设计一个能被继承的类 但不能在外部环境创建该类型的对象 限制派生类对象不可以拷贝和赋值如何实现 设计一个类
代码运行结果
面向对象
C笔记
c
开发语言
C语言--swap交换函数
目录 1 swap1 int a int b 不变 2 swap2 int a int b 不变 3 swap3 int a int b 改变 4 swap4 int a b 改变 1 swap1 int a int b 不变 void s
C笔记
代码运行结果
swap交换函数四种情况
c语言
LeetCode
Linux--信号量共享内存
1 基础知识 1 共享内存是最快的IPC形式 一旦这样的内存映射到共享它的进程的地址空间 这些进程间的数据传递不再涉及内核 即进程不再通过执行进入内核的系统调用来传递彼此的数据 2 共享内存的生命周期随内核 3 注意 共享内存未提供任何保护
Linux命令
代码运行结果
新手入门
Linux
运维
数据结构与算法--分治策略
目录 1 分治概念 2 递归的概念递归 3 分治策略的 1 分治策略的特征 2 分治法步骤 4 栈的面试题 5 示例 1 示例1求解n的阶乘 1 分析 2 阶乘可递归的定义为 3 递归程序 4 图解递归过程 代码的调动过程 5 图解递归过程
代码运行结果
C笔记
数据结构与算法
算法
开发语言
Linux--主函数的三个参数(环境变量)、printf隐藏的缓冲区(目的、存在感、强制刷新、退出)
目录 1 主函数的前两个参数 编辑 2 环境变量 3 envp argv都是以NULL作为结尾的 4 printf隐藏的缓冲区 1 目的 2 环境变量 3 缓冲区的存在 4 强制刷新 5 exit与exit 1 主函数的前两个参数 argc
Linux命令
代码运行结果
笔记
c
开发语言
Linux--进程间通信、IPC、管道
目录 1 进程间通信的方法 2 IPC机制 1 有命管道 1 简介 5 管道的特点 6 循环写读 2 无名管道 1 简介 2 代码 4 总体特点 5 管道实现图 1 进程间通信的方法 1 管道 2 信号量 3 共享内存 4 消息队列 5 套
代码运行结果
Linux命令
新手入门
网络
Linux
Linux--信号量
1 信号量的定义 信号量是一个特殊的变量 一般取正数值 它的值代表允许访问的资源数目 获取资源时 需要对信号量的值进行原子减一 该操作被称为p操作 当信号量值为0时 代表没有资源可用 p操作会阻塞 释放资源时 需要对信号量的值进行原子加一
Linux命令
新手入门
代码运行结果
Linux
运维
Linux--写时拷贝、内存管理
目录 1 内存管理 2 写时拷贝技术 1 内存管理 简单分页 逻辑页 物理页 页表 将虚拟内存空间和物理内存空间划分为大小相同的页面 4k 8k 16k等 虚拟内存 在磁盘上划分一块空间 为什么要有逻辑页面和物理页面 物理页面很长 不能确定
Linux命令
代码运行结果
笔记
服务器
Linux
C++之运算符重载
目录 1 运算符重载 1 可实现的对象 编辑2 定义运算符重载函数的一般格式 3 运算符的重载实际 2 为什么要重载 3 前提 4 如何重载 5 默认 6 指针作为数据成员 7 字符串重载 8 友元重载 重载输出 lt lt 运算符 9 运
C笔记
代码运行结果
新手入门
c
开发语言
C++之函数重载
目录 1 函数重载 2 函数重载的概念 3 编译器的工作 4 判断函数重载的规则 1 函数的重复声明 2 参数表的比较过程与形参名无关 3 如果在两个函数的参数表中 4 相同的参数列表 5 形参是按值传递方式定义 6 参定义指针或引用 7
C笔记
新手入门
代码运行结果
c
开发语言
C语言--八大排序之希尔排序算法
希尔 shell 排序 分组后 间隔式的分组 利用直接插入排序 简单来说就是 插入排序是间隔为一的数字之间进行比较 但希尔排序是间隔为gap的数字为一组 先进行一次插入排序 再不断缩小gap的值 重复以上操作 直到最后一个gap的值为1 分
笔记
代码运行结果
新手入门
c语言
算法
Linux进程的基础知识、fork复制进程
目录 1 进程的基础知识 1 进程 2 PCB 3 进程的状态 4 并发与运行 2 操作系统发展史 3 fork复制进程 1 进程的基础知识 1 进程 一个正在运行的程序 2 PCB 进程控制块 进程控制块是用一个结构体struct tas
Linux命令
笔记
代码运行结果
Linux
运维
Linux--文件、进程、fork、open、系统调用、库函数相关知识
目录 1 进程打开文件的流程 2 先打开再fork的流程 重点 1 代码演示 2 分析 3 先fork再open 1 代码演示 2 分析 4 fork补充 5 系统调用与库函数的区别 1 进程打开文件的流程 inode 节点 存放有关文件的
Linux命令
新手入门
代码运行结果
Linux
运维
Linux--僵死进程(僵尸进程)
1 僵死进程产生的原因或者条件 当子进程先于父进程结束 父进程没有获取子进程的退出码 此时子进程变成僵死进程 即就是子进程结束了 但父进程还没有结束的时候才会出现僵死进程 代码中 子先于父 后台运行 当一个进程结束的时候 只有进程的退出码被
Linux命令
代码运行结果
新手入门
Linux
运维