自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 C++方式封装顺序表、单链表和双向链表

1.顺序表Seqlist.h#pragma oncetypedef int DataType;class Seqlist{public: Seqlist()//构造 :_array(NULL) , _size(0) , _capacity(0) {} Seqlist(const Seqlist& s)//拷贝构造 { _array = (Da

2017-08-26 11:50:53 478

原创 epoll服务器

1.默认模式(LT)的epoll服务器代码vim myepoll.c运行结果如下:2.epoll 服务器的优缺点优点:1)支持最大数目的文件描述符(fd)       epoll 的文件描述符支持最大的打开数目,一般来说 1G 可以存 10 万左右。2)IO 效率不随 fd 数目增加下降      这个主要原因是因为 epoll

2017-08-20 23:27:14 406

原创 _String类

String.h#pragma onceclass String{public: String(char *str = "")//构造函数 { _size = strlen(str); _capa = _size; _str = new char[_capa + 1]; strcpy(_str, str); } String(const String& s)/

2017-07-21 23:41:18 370

原创 shell进度条

1.普通版本:2.彩色版本:这里的 m 值即 color 采用了取模运算, 是为了让进度条八种颜色不断变换达到彩色效果。进度条颜色设置:shell 脚本中 echo 显示内容带颜色显示,echo 显示带颜色,需要使用参数 -e ,-n 表示不换行。echo -e "\033[字背景颜色;文字颜色m字符串\033[0m"注:

2017-07-21 15:16:50 340

原创 tcp_server

vim tcp_client.c运行结果如下:2.多进程版本:3.多进程版本:

2017-07-13 16:25:16 385

原创 udp_server

vim udp_server.cvim client.c运行结果如下:udp 不可靠,那么如何在用户空间实现可靠性呢?       udp 不属于连接型协议,因而具有资源消耗小,处理速度快的优点,所以通常音频、视频和普通数据在传送时使用 UDP 较多,因为它们即使偶尔丢失一两个数据包,也不会对接收结果产生太大影

2017-07-12 22:22:08 424

原创 TCP握手和挥手

1. TCP 连接建立与释放2. 为什么要三次握手?第一次握手:        客户端先发送一个 SYN 请求(SYN=1 表示该报文是一个连接请求报文),发送的序号 seq=x(x 是系统自己选定的大小),SYN 虽然不携带数据但是会消耗一个序列号。当客户端的 SYN 请求发送出去之后,客户端进入 SYN-SENT 状态。 第二次握手:

2017-07-12 19:57:20 301

原创 实现睡眠函数mysleep

1. 普通版本的 mysleep 函数(有 bug 存在)vim mysleepvim Makefile运行结果如下:我们可以发现当我们的代码运行以后,屏幕上输出很多的 using mysleep sleep! ,而且在最后一行每隔三秒打印一次,且一直打印直到我们强制停止。审视 “mysleep” 程序,设想这样的时序:① 注册 SIGALRM

2017-07-05 10:03:03 710

原创 crond和crontab调研

1.概念:        crond 是 Linux 系统用来定期执行命令或指定程序的服务的一种服务或软件。一般情况下当我们安装完成 linux 操作系统之后,默认便会启动 Crond 任务调用服务。Crond 服务会定期(默认一分钟检查一次)检查系统中是否有要执行的任务工作。如果有,便根据其预先设定的定时任务规则自动执行该定时任务工作。这个 Crond 定时服务就像闹钟。  

2017-06-30 15:04:29 331

原创 Linux 守护进程

1.概念:        在linux或者unix操作系统中在系统引导的时候会开启很多服务,这些服务就叫做守护进程。为了增加灵活性,root可以选择系统开启的模式,这些模式叫做运行级别,每一种运行级别以一定的方式配置系统。 守护进程是脱离于终端并且在后台运行的进程。守护进程脱离于终端是为了避免进程在执行过程中的信息在任何终端上显示并且进程也不会被任何终端所产生的终端信息所打断。 

2017-06-29 16:44:21 389

原创 Linux CRC校验

1.概念:CRC即循环冗余校验码(Cyclic Redundancy Check):是数据通信领域中最常用的一种差错校验码,其特征是信息字段和校验字段的长度可以任意选定。2.如何校验:        2^n*M (发送数据),这相当于在 M 后面添加 n 个 0,长度成为 k + n;        得到的 (k + n) 位的数除以事先选定好的长度为 (n + 1) 位的

2017-06-29 11:46:39 1018

原创 操作符和表达式的总结

操作符和表达式一共分为:        算术操作符、移位操作符、位操作符、赋值操作符、单目操作符、关系操作符、逻辑操作符、条件操作符、逗号表达式、(下标引用、函数调用和结构成员)十种。1.算数操作符:%操作符的两个操作数必须为整数。返回的是整除之后的余数。2.移位操作符:左移                         右移>>   左边用原该值的符号位填充,右边丢弃(

2017-03-26 14:47:41 446

原创 改了好多,还有待加强

1.将数组A中的内容和数组B中的内容进行交换。(数组一样大)#include int main(){ int arr1[3] = { 1, 3, 5 }; int arr2[3] = { 2, 4, 6 }; int i = 0; int sz = sizeof(arr1) / sizeof(arr1[0]); for (i = 0; i  {  i

2017-03-24 18:55:09 300

原创 又学到了一些

给定两个整形变量的值,将两个值的内容进行交换#include int main(){    int a = 0;    int b = 0;    int c;    scanf_s("%d%d", &a, &b);    printf("交换前a和b的值:\n");    printf("a = %d,b = %d\n", a, b);    c

2017-03-22 23:12:18 382

原创 C语言的简单编程

1.100到200之间的素数:#include #include int main(){ int i = 0 ; int count = 0; for (i = 100; i  {  int j = 0;  for (j = 2; j   {   if (i%j == 0)   break;  }  if (j > sqrt(i) )

2017-03-22 17:43:07 431

原创 Self-introduction

我是陕西科技大学的一名大三学生,所学专业是信息与计算科学,

2017-03-18 13:18:55 367

空空如也

空空如也

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

TA关注的人

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