从零实现隧道穿透(三):epoll 用法

int epoll_create(int size); 作用:创建一个 epoll 的句柄。 参数:size 用来告诉内核监听的数目大小,内核会根据 size 的大小去申请对应的内存。 返回值:成功则返回新的 epoll 对象的文件描述符...

Read more

从零实现隧道穿透(一):socket编程记录

总览: 注意: 如果是买的云服务器,开放端口除了要在服务器上设置一下,还要再购买的网站的控制台处设置一下。 【客户端】 1、int socket(int family, int type, int protocol); 【作用】 创建一...

Read more

Linux下vim的便捷使用

本篇较多的都是关于 vim 的快捷使用,另外夹杂着一些我觉得好用的技巧。 1.快捷键设置 举个栗子,例如每次在vim中敲完代码,退出vim再编译链接有点麻烦,可以用快捷键替换来实现写完代码立即运行 nnoremap <F5>...

Read more

python学习笔记

1.注释与缩进 1.1 注释 1.2 缩进规则 2.数据类型 2.1 整型 2.2 浮点型 2.3 字符串 2.3.1 内部使用'和" 2.3.2 转义 2.3.3 字符串拼接 2.3.4 中文字符 2.4 布...

Read more

Linux下的俄罗斯方块小游戏(C++)

补上之前的.. 简介 主要思路 简单的逻辑 一、Linux终端显示控制 二、背景地图 三、绘制即将要下落的方块 四、旋转方块 五、左移和右移 难点 六、终端的非规范模式 七、获取用户的按键 八、I/O多路复用 收尾 九、判断...

Read more

C++ | 函数重载

函数重载是什么 可以构成重载的要求 参数列表的要求 其他注意点 1、类型需要完全匹配 2、注意引用 3、const 指针类型匹配 重载引用参数 何时采用函数重载 函数重载的原理 函数重载是什么 缺省参数让我们在参...

Read more

C++ | 引用变量

目录 目录 导语:为什么要有引用变量 引用的概念 用法示例 引用的属性与特别之处 主要作用 1.引用作参数 用法 引用传参的另一个好处 小结 2.引用作返回值 为何要返回引用 返回引用时要注意的问题 小结 何时...

Read more

C++ | 命名空间

命名空间,也就是名称空间/名字空间,注意需要的头文件是 iostream ,而不是 iostream.h ,后者是旧版本的 C++ 头文件,并不支持命名空间。 目录: 目录: 为什么要有命名空间? 使用方法 使用 std(使用全部...

Read more