- 博客(16)
- 问答 (6)
- 收藏
- 关注
转载 Linux Socket编程
Linux Socket编程“一切皆Socket!”话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket。——有感于实际编程和开源项目研究。我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠socket?那什
2018-01-02 19:51:20
1608
转载 静态库与动态库
动态库与静态库优缺点比较 我们在编写一个C语言程序的时候,经常会遇到好多重复或常用的部分,如果每次都重新编写固然是可以的,不过那样会大大降低工作效率,并且影响代码的可读性,更不利于后期的代码维护。我们可以把他们制作成相应的功能函数,使用时直接调用就会很方便,还可以进行后期的功能升级。 例如我要在一段代码中多次交换两个变量的值,我可以在代码
2017-10-22 15:41:41
316
转载 字典树
转载自: http://blog.youkuaiyun.com/jiutianhe/article/details/80768351. Trie树Trie树,即字典树,又称单词查找树或键树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计和排序大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:最大限度地减少无谓的字符串比较,查询
2017-10-20 20:27:51
322
转载 ARP协议
ARP协议---Address Resolution Protocol---地址解析协议 在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧之前将目标主机的IP地址转换成目标主机的MA
2017-10-19 16:08:39
266
原创 内存对齐小结
原则1:结构体的数据成员,第一个数据成员放到[0]的位置,以后每个数据成员的起始位置要从该成员大小或成员子成员大小(如数组)的整数倍开始;原则2、结构体作为成员,如果一个结构中有某些结构体成员,则结构体成员要从其内部最大的整数倍地址开始存储(struct a中公有struct b,b中有char,int,double等元素,则b应该在8(double)的整数倍开始存储);原则3、结构体的总
2017-10-19 15:53:19
211
原创 进程的调度方式,调度算法总结
进程的三种状态:1、等待态:等待某个事件的完成;2、就绪态:等待系统分配处理器以便运行3、运行态:占有处理器正在运行三种状态的转化:运行态到等待态:往往是由于等待外设,等待主存等资源分配或等待人工干预而引起的;等待态到就绪态:等待的条件已经满足,只需要分配到处理器后就能运行;就绪态到运行态:系统按某种策略选中就绪队列中的一个进程占用处理器;运行态到就绪态:由
2017-10-19 11:20:06
5780
转载 DNS解析过程
一. 根域就是所谓的“.”,其实我们的网址www.baidu.com在配置当中应该是www.baidu.com.(最后有一点),一般我们在浏览器里输入时会省略后面的点,而这也已经成为了习惯。根域服务器我们知道有13台,但是这是错误的观点。根域服务器只是具有13个IP地址,但机器数量却不是13台,因为这些IP地址借助了任播的技术,所以我们可以在全球设立这些IP的镜
2017-10-17 22:19:18
316
转载 堆和栈的区别
转自 http://blog.youkuaiyun.com/hairetz/article/details/4141043/一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap)
2017-10-17 22:09:47
168
转载 虚函数实现原理
C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。关于虚函数的使用方法,我在这里不做过
2017-10-07 22:06:04
273
转载 C++虚函数与虚函数表
转载自http://blog.youkuaiyun.com/sanfengshou/article/details/4574604虚函数的定义: 虚函数必须是类的非静态成员函数(且非构造函数),其访问权限是public(可以定义为private or proteceted, 但是对于多态来说,没有意义。),在基类的类定义中定义虚函数的一般形式: virtual 函数返回值类型 虚函数名(形参表
2017-10-07 21:59:21
892
转载 TCP粘包问题
转自 http://www.cnblogs.com/kex1n/p/6502002.htmlTCP粘包问题分析和解决(全)TCP通信粘包问题分析和解决(全)在socket网络程序中,TCP和UDP分别是面向连接和非面向连接的。因此TCP的socket编程,收发两端(客户端和服务器端)都要有成对的socket,因此,发送端为了将多个发往接收端的包,更有效的发到对方
2017-10-06 20:39:42
957
转载 OSI七层模型与TCP/IP五层模型
转载自 http://www.cnblogs.com/qishui/p/5428938.html一、OSI参考模型 今天我们先学习一下以太网最基本也是重要的知识——OSI参考模型。 1、OSI的来源 OSI(Open System Interconnect),即开放式系统互联。 一般都叫OSI参考模型,是ISO(国际标准化组织)组织在1985年研
2017-10-06 16:55:35
1861
转载 C语言程序从高级语言到二进制的程序经过了哪些过程
C语句的经典,“Hello World”程序几乎是每个程序员闭着眼睛都能写出的,编译运行一气呵成,基本成了程序入门和开发环境测试的默认标准。#include stdio.h>int main(){ printf("Hello World\n"); return 0; 在Linux下,我们用GCC来编译该程序时,只需使
2017-10-06 16:34:49
6386
1
转载 assert()的用法
断言(ASSERT)的用法 在经过对其进行一定了解之后,对其作用及用法有了一定的了解,assert()的用法像是一种“契约式编程”,在我的理解中,其表达的意思就是,程序在我的假设条件下,能够正常良好的运作,其实就相当于一个if语句:if(假设成立){ 程序正常运行;}else{ 报错&&终止程序!(避免由程序运行引起更大的错误) } 但是这样写的
2017-09-26 23:02:13
295
转载 TCP拥塞控制机制
TCP拥塞控制机制 研究TCP的拥塞机制,不仅仅是想了解TCP如何的精巧,更多的是领悟其设计思想,即在一般情况下,我们该怎样处理问题。 一.拥塞的发生与其不可避免 拥塞发生的主要原因:在于网络能够提供的资源不足以满足用户的需求,这些资源包括缓存空间、链路带宽容量和中间节点的处理能力。由于互联网的设计机制导致其缺乏“接纳控制”能力,因此在网络资源不足时不能限制用户数量,而只能靠降
2017-09-26 22:10:54
275
转载 C++中的static关键字的总结
本文转自vckbase,作者:韩耀旭C++中的static关键字的总结 C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。1.面向过程设计中的static1.1静态全局变量在全局变量前,加上关键字static,该变量就被定义成
2017-09-25 21:40:59
203
空空如也
搞通信的大神,求问有人仿真过greedy maximal scheduling算法吗
2017-09-07
哪位看过下面这篇论文吗,这种论文怎么用matlab复现呢
2017-09-06
python中正则表达式一题
2017-06-21
如何解决hackerrank中的测试样例被墙的问题呢
2017-06-20
求问,一道Python排序题,排序从小写、大写、奇数、偶数
2017-06-17
hackerrank上面一道Python题capitalize
2017-06-01
TA创建的收藏夹 TA关注的收藏夹
TA关注的人