使用gdb调试程序详解

熟练使用gdb是一个linux下开发人员必备的一项技能,我们由浅入深的学习一下gdb的强大功能。 一.gdb简单介绍 名称     gdb – GNU 调试器 提要     gdb [-help] [-nx] [-q] [-batch] [-cd=dir] [-f] [-b b...

多进程(fork)的框架示例

写了一个简单的多进程的框架,其实很简单但是意义却不仅在于此。 一.网上弄够编译通过的这种代码几乎=0,都是象征性的贴几段代码,直接拿下来,编都编译不过。 二.近期打算写一个基...

用netstat查看网络状态详解

一、Linux服务器上11种网络连接状态:                                           图:TCP的状态机 通常情况下:一个正常的TCP连接,都会有三个阶段:1、TCP三次握手;2、数据传...

send函数和recv函数详解

send函数 int send( SOCKET s,    const char FAR *buf,    int len,    int flags );  不论是客户还是服务器应用程序都用send函数来向TCP连接的另一端发送数据。 客户程序一般用send函数向服务器发送请求...

snprintf容易误解的使用方法

自从snprintf代替了sprintf,相信大家对snprintf的使用都不会少,函数定义如下: int snprintf(char *str, size_t size, const char *format, …); 但是大家在使用snprintf的时候是否真的清楚参数里size的意思呢...

epoll使用实例说明

之前一直在讲如何epoll如何好用,但是并没有实例来演示epoll的使用,下面我们就看一个服务器端使用epoll监听大量并发链接的例子。 首先看一下epoll的几个函数的介绍。 1、epoll_create函数 /** ...

时间time_t和string(char*)格式互转

在程序中,我们经常性的会使用到时间格式的转化,比如讲time_t转化成string,或者反过来转,下面就是实现的代码。分为 2009-3-24 和 2009-3-24 0:00:08两种时间格式。 时间格式:2009-3-24 : 1 2 3 4 5...

linux常用的makefile模版编写

在linux下面,我们不得不自己写makefile,makefile的确博大精深,但是实际上对于日常的使用来说,无非就是 1:编译可执行程序。2:编译lib库 3:编译so库 本博针对上面三种目的各自写出了makefi...

GBK与UTF8 编码转化(C++)

经常会用到gbk和utf8互转的情况,下面的代码就是实现了这样的功能,希望对大家有用~   //GBK 2 UTF8 int API_Gbk2Utf8(const char *szSource, string &strDest) {     char szUniString[strlen(szSource)*2];     int i...

循环执行中的限速逻辑(c++)

在工作中,我们可能经常会用到压力测试等循环执行执行发包的机制,为了防止目标机压力过大,必然需要一个限速逻辑来进行控制,之前在网上看了看,发现基本没有这方面的介绍,于是...