自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

专注探索c++,Linux等后台开发相关机制,欢迎关注,欢迎交流

博客持续更新,欢迎关注,个人github博客:https://chhy2009.github.io,

  • 博客(12)
  • 资源 (8)
  • 收藏
  • 关注

原创 udp程序设计

几点注意事项:1、 使用recvfrom 接收应答方地址,对应答方进行身份检测      利用memcpy函数比较地址是否一致。2、 sendto 操作成功返回仅仅表示在接口输出队列中具有存放所形成的IP数据报的空间。而不检验目的地址是否可达。如果需要检查目的地址的话应使用connect3、 当服务端无应答时,recvfrom会一直阻塞,解决的方法有三种: 1) 利用中段SIGAL

2017-06-29 23:24:31 353

原创 域名解析

linux 域名解析的原理:1、 查找本地中的配置文件配置文件/etc/hosts域名服务器地址文件:/etc/resolv.conf文件2. 通过发送DNS解析请求给DNS服务器,返回应答相关结构为:struct hostent {      char *h_name;     //主机名      char **h_aliases; //别名      in

2017-06-29 23:22:24 373

原创 标准io库的缓冲问题

标准io函数库执行以下三类缓冲:1)  完全缓冲:在缓冲区满,进程显示调用fflush,或进程调用exit终止自身(C库的exit函数调用标准I/O清理函数)。标准I/O缓冲区的大小通常为8192字节。2)  行缓冲:意味着只在出现下列情况下才发生I/O:碰到一个换行符,进程调用fflush,或进程调用exit终止自身3)  不缓冲:每次调用标准I/O输出函数都发生I/O标准I/O...

2017-06-29 23:15:40 351

转载 文件描述符和文件指针的区别

文件描述符:在linux系统中打开文件就会获得文件描述符,它是个很小的正整数。每个进程在PCB(Process Control Block)中保存着一份文件描述符表,文件描述符就是这个表的索引,每个表项都有一个指向已打开文件的指针。 文件指针:C语言中使用文件指针做为I/O的句柄。文件指针指向进程用户区中的一个被称为FILE结构的数据结构。FILE结构包括一个缓冲区和一个文件描述符。而文件

2017-06-29 23:03:52 274

原创 Linux内核编程四部曲

最近做驱动开发,需要了解下内核编程。分享下Linux内核编程的一篇文章,http://blog.chinaunix.net/uid-24782829-id-3211008.html

2017-06-29 22:58:15 460

原创 线程清理函数

在线程编程中,当程序满足一定条件时(如某个事件,信号),我们希望线程可以在退出时重置一些程序状态变量(做线程退出时的扫尾工作)。这时候可以用线程清理函数来实现。下面是一篇关于该知识点的文字,觉得不错,分享下:转载链接:http://blog.chinaunix.net/uid-28852942-id-3755621.html下面的测试程序我们都省略错

2017-06-29 22:24:15 568

原创 GoogleTest测试框架

Googletest测试框架是Google提供的一个c/c++代码测试框架,使用也比较简单,源码可以从github上直接下载,用法也有简单的说明,可以很快上手。android源码中就预置了Googletest测试框架,搞android的同学可以利用这个框架来测试自己的native层代码。想了解其实现原理的同学可以参考下面的文章,还不错:玩转Google开源C++单元测试框架Go

2017-06-28 07:47:54 618

转载 base64编码详解

转载链接:http://www.cnblogs.com/chengmo/p/3735917.html Base64编码,是我们程序开发中经常使用到的编码方法。它是一种基于用64个可打印字符来表示二进制数据的表示方法。它通常用作存储、传输一些二进制数据编码方法!也是MIME(多用途互联网邮件扩展,主要用作电子邮件标准)中一种可打印字符表示二进制数据的常见编码方法!它其实只是定义用可打印字符传

2017-06-28 07:41:41 436

转载 vim编辑二进制文件

编辑二进制文件vim可以很方便地编辑二进制文件,个人认为它比emacs的二进制编辑方式更 好用。vim中二进制文件的编辑是先通过外部程序xxd来把文件dump成其二进制的 文本形式,然后就可以按通常的编辑方式对文件进行编辑,编辑完成后再用xxd 转化为原来的形式即可。可分如下几步进行:首先,以二进制方式打开文件,命令为vi -b filename然后,在

2017-06-28 07:38:24 298

转载 uml关联符号说明

重数性关联: 重数性关联关系又称为多重性关联关系(Multiplicity),表示一个类的对象与另一个类的对象连接的个数。在UML中多重性关系可以直接在关联直线上增加一个数字表示与之对应的另一个类的对象的个数。表示方式多重性说明1..1表示另一个类的一个对象只与一个该类对象有关系0..*表示另一个类的一

2017-06-27 23:07:57 1767

转载 redis多数据库

一台服务器上都快开启200个redis实例了,看着就崩溃了。这么做无非就是想让不同类型的数据属于不同的应用程序而彼此分开。那么,redis有没有什么方法使不同的应用程序数据彼此分开同时又存储在相同的实例上呢?就相当于mysql数据库,不同的应用程序数据存储在不同的数据库下。redis下,数据库是由一个整数索引标识,而不是由一个数据库名称。默认情况下,一个客户端连接到数据库0。redis配置

2017-06-18 11:12:34 567

原创 mac 下安装redis-py

Python默认不支持redis,需要自行安装redis-py模块。安装步骤:1、 git clone https://github.com/andymccurdy/redis-py.git2、 sudo python setup.py install     这样就能正常用>>> import redis 在python中使用r

2017-06-17 23:35:42 545

socket_program.tgz

linux下的socket编程Client/Server示例

2021-02-15

LeetCode算法题汇总

LeetCode算法题解

2017-08-06

objective-c快速入门

oc基本语法描述

2017-08-06

Graph search 个性化模型中高级特征挖掘浅谈.docx

Graph search 个性化模型中高级特征挖掘浅谈.docx

2017-08-06

etao爬虫抓取系统的那些事

etao爬虫抓取系统讲解

2017-08-06

stl源码及帮助文档

sgi stl源码及相关说明文档,资源也可以从sgi官网上获取

2016-03-05

C++/MFC绘图

MFC中绘图讲解与代码,很好的学习资料。例子很详细,是很好地C++入门资料。

2013-09-26

空空如也

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

TA关注的人

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