自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (1)
  • 收藏
  • 关注

原创 网络基础 —select函数

1.函数原型int select(int n,fd_set * readfds,fd_set * writefds,fd_set * exceptfds,struct timeval * timeout);2.函数说明select()用来等待文件描述词状态的改变。参数n代表最大的文件描述词加1,参数readfds、writefds和exceptfds 称为描述词组,是用来回传该描述...

2018-03-29 23:41:07 318

原创 网络基础—socket编程(2)-----基于UDP的客户端和服务器端的实现

基于UDP的socket 服务端和客户端实现——服务端#include <stdlib.h>#include <stdio.h>#include <errno.h>#include <string.h>#include <unistd.h>#include &a

2018-03-29 01:11:27 457

原创 网络基础—socket编程(1)

socket网络编程的含义 linux网络编程是通过socket(套接字)接口实现,socket是一种文件描述符(可类比文件操作),socket起源于UNIX,在Unix一切皆文件哲学的思想下,socket是一种”打开—读/写—关闭”模式的实现,服务器和客户端各自维护一个”文件”,在建立连接打开后,可以向自己文件写入内容供对方读取或者读取对方内容,通讯结束时关闭文件。常见 socket 分类 ...

2018-03-29 00:00:29 272

原创 一个有趣的智力题,可以看看

题目“从前,有个小岛上只住着和尚。有些和尚的眼睛是红色的,而另一些的则是褐色。红色眼睛的和尚受到诅咒,如果得知自己的眼睛是红色的,那么当晚12点必须自行了断。(因为受到诅咒,所以只要得知自己的眼睛是红色的,则必须选择自杀,无一例外。)”和尚们之间有一条不成文的规定,彼此不能提起对方眼睛的颜色。小岛上没有一面镜子,也没有可以反射自己容貌的物体。因此,没有任何人能够得知自己眼睛的颜色。出于这些...

2018-03-27 13:12:29 8440 3

原创 复习C++之思维导图

get到一个优秀C++思维导图,C++知识写的很详细,不多说了直接上图吧:

2018-03-26 19:29:13 1470 2

原创 网络基础—解决粘包问题

TCP是一种基于字节流的传输服务,因此,TCP所传输的数据是没有边界的。这不同于UDP提供基于消息的传输服务,其传输的数据是有边界的。TCP的发送方无法保证对等方每次接收到的是一个完整的数据包。 1、TCP粘包问题产生的原因SQ_SNDBUF 套接字本身有缓冲区大小的限制 (发送缓冲区、接受缓冲区)TCP传送的端 MSS大小限制链路层也有MTU大小限制,如果数据包大于>MTU要在...

2018-03-26 19:24:09 302

原创 网络基础—网络体系结构浅析

链路层将信息封装->发送->解封 ——–1500———- ARParp -a 缓存ARP帮忙找路,如果发不出去,回应需要ICMP协议ping命令网络层(IP层) IP协议头格式 IP层主机间通信路径的选择(路由)route -n 查看路由表信息 ifconfig -a eth0 查看自己的IP地址比较原机器和目标机器的网络号;相同就继...

2018-03-25 17:20:00 198

原创 网络基础—网络基本认识及相关接口

FTP协议传送文件: 1.文件名 2.大小 3.内容网络的分层结构: 1.TCP/IP因其低成本、不同平台间通信的可靠性,已成为局 域网和internet的标准协议。 1.TCP/IP分为四层,从上网下依次是: 应用层、传输层、网络层、网络接口层。 2.应用层: 使用应用层协议,将封装好的数据提交给传输层、或者从传输层接收数据并处理。 3.传输层: 实现应用...

2018-03-25 17:07:16 475

原创 判断是否平衡树的优化算法

平衡二叉搜索树左右高度差不超过1 高度可以保持在log2N,插入/删除/查找效率log2N1.左边增加结点,bf–,右边增加结点,bf++ 2.如果增加过后,bf==0,说明高度不变,填平了矮的一边 3.如果bf==|1|,说明本来平衡,继续往上更新bf 4.如果bf==|2|,不再更新,开始调整旋转 1.左单旋/右单旋 2.右左双旋/左右双旋面试题判断一个二叉树是...

2018-03-25 16:56:20 339

原创 Linux下makefile模板

提供一个简单的 Makefile 模板,根据需要作相应修改,可以适用于很多小项目。CC=gccSRCS=$(wildcard *.c */*.c)OBJS=$(patsubst %.c, %.o, $(SRCS))FLAG=-gNAME=$(wildcard *.c)TARGET=$(patsubst %.c, %, $(NAME))$(TARGET):$(OBJS) ...

2018-03-25 12:21:52 518

UNIX环境高级编程

    If you are an experienced C programmer with a working knowledge of UNIX, you cannot afford to be without this up-to -date tutorial on the system call interface and the most important functions found in the ANSI C library. Richard Stevens describes more than 200 system calls and functions; since he believes the best way to learn code is to read code,a brief example accompanies each description. Building upon information presented in the first 15 chapters, the author offers chapter-long examples teaching you how to create a database library, a PostScript printer driver, a modem dialer, and a program that runs other programs under a pseudo terminal. To make your analysis and understanding ofthis code even easier, and to allow you to modify it, all of the code in the book is available via UUNET. Advanced Programming in the UNIX Environment is applicable to all major UNIX releases, especially System V Release the latest release of 4.3BSD, including 386BSD. These real-world implementations allow you to more clearly understand the status of the current and future standards,including IEEE POSIX and XPG3.

2017-11-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除