自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

practice make prefect

C/C++,linux,socket,win32,php

  • 博客(72)
  • 资源 (24)
  • 收藏
  • 关注

原创 C++ sort函数与优先队列排序比较

可以看到:std::sort 与 优先队列的排序规则刚好相反。

2023-08-24 14:20:51 222

原创 Linux信号屏蔽以及挂钩处理

Linux信号屏蔽以及挂钩处理

2023-03-11 22:19:35 165

原创 C++17 STL MAP [] vs insert vs emplace vs try_emplace

C++17 STL MAP [] vs insert vs emplace vs try_emplace

2022-10-03 18:58:41 750

原创 C++11 emplace_back vs push_back

C++11 emplace_back vs push_back

2022-07-07 10:48:47 377

原创 在centos6.2上安装q-text-as-data(3.1.6)

q - text-as-data的介绍点击:我主要用他来分析日志,公司跑hive的机器glibc版本很低,无法作者打好的bin直接跑。今天主要做了几件事情:(1)安装open-sslwget https://www.openssl.org/source/openssl-1.1.1c.tar.gz --no-check-certificatetar zxvf openssl-1.1.1c.tar.gzcdopenssl-1.1.1c./config --openssldir=/ho..

2022-02-26 19:17:39 1535

原创 mysql一次性导入导出多个库

mysql -e "show databases;" -h xxx-u xxx -p xxx | grep -v "xx" | grep "yy" | xargs mysqldump -h xxx -ugaia_user -pxxx --databases > xxx.sql导出:mysql -u root -p123< xxx.sql流式导数据: mysqldump ...

2019-12-09 17:04:42 979

原创 golang中的多态

一:多态在计算广告中的典型场景:(1)广告召回之后,做一批的各种维度的过滤操作关于多态的一个小例子:type Animal interface { Sound()}type Bird struct {}type Bee struct {}func (a *Bird) Sound() { fmt.Println("Bird" + "\t" + "啾啾啾")}...

2019-11-05 12:01:56 256

原创 redis内存优化和分布式锁

一:内存优化。(1)在key的数量很多的情况下,尝试将字符串替换为一个个小的哈希表。(2)因为redis默认在哈希key不超过512,value不超过64字节的时候,使用ziplist。(3)需要额外的开发sharding函数,来把大的哈希表打散。问题来了,在字符串形式下,每个key可以单独的设置过期时间。哈希表不支持子key设置过期,咋办?解决办法:在value中存上时间戳。...

2019-10-26 19:59:10 156

原创 golang中的mmap使用

mmap的原理参考:https://blog.csdn.net/ITer_ZC/article/details/44308729golang中mmap存在于exp包下面,对于使用brew安装的环境而言,exp包的源码并未自动下载。需要先手动get下来。go get github.com/golang/exp下面是一个简单的小例子:package mainimport ( "...

2019-02-17 20:08:42 5872

原创 golang中的implode和explode

implode和explode是php中的两个库函数。分别用来将数组中的元素组合成字符串 &amp; 拆分字符串为数组。golang中对应的函数为 strings.Join &amp; strings.Split下面是一个小例子,先将数组组合成字符串,再拆分字符串为数组:strArrayOld:=[]string{"aa","bb"}//implodestrTotal:=stri...

2018-08-05 23:15:56 9329

原创 使用php来统计你的计算机中命令行调用情况

<?php exec("cat ~/.zsh_history",$data); exec("cat ~/.bash_history",$data); foreach ($data as $str) { $str = preg_replace('/[0-9]|:|;/', "", $str); $str=trim($str);

2016-09-22 00:57:04 394

原创 php中compact,extract,list函数的使用

<?php//compact 将变量组合为数组$key_1 = "val_1";$key_2 = "val_2";$data = array('$key_3'=>'val_3','$key_4'=>'val_4');$arr_n =compact('key_1','key_2','data');echo "compact:\n";//extract根据键名导出变量echo "ex

2016-08-22 02:19:00 1697

原创 在javascript中读取php数组

浏览器打开此文件后,控制台显示如下:

2016-08-16 00:17:45 727

原创 php使用header函数实现文件下载

文件下载很简单:可以使用在html中的超链接跳转到文件进行下载:下载';?>使用方法是用户直接在浏览器点击超链接。但是这种下载方法有一定问题:有些浏览器能直接识别的数据类型,如文本,部分图像等。将直接在浏览器中显示而不是下载。所以通常不使用这种方法。在php中可以通过header函数把服务器的文件设置为附件类型,通知客户下载。使用如下: header('Conten

2016-08-06 23:32:59 1400

原创 php导入命名空间中的类

一个在命名空间中声明的类(space.php):<?php namespace mspace; class mclass { public function __construct() { echo __METHOD__."\n

2016-08-06 10:57:46 1044

原创 php数组函数中的array_slice和array_flip

先看array_slice.array_slice的作用是从数组中取出一部分,有两种用法:$arr=array('a'=>'aa', 'b'=>'bb', 'c'=>'cc', 'd'=>'dd');//从数组中第1个数据(数组本身从0开始)开始,取两项。$tmp=array_slice($arr,1,2);

2016-07-14 01:07:55 625

原创 php中的时间处理类

php中的几个时间处理类:DateTime,DateTimeZone,DateInterval,DatePeriod。DateTime :时间类DateTimeZone:时区内DateInterval:表示一段时间间隔,它是时间对象做加减法的单位。DatePeriod:表示一段时间集合。结合DateInterval可对集合内的时间遍历处理。下面是这几个类的具体使

2016-07-07 20:50:54 2354

原创 php中的过滤器

校验字符串是程序中最常见的功能。比如遇见这样一个场景,校验字符串是否符合ip地址格式。通常有两种方法:(1) 手写一个ip地址校验函数(2) 正则表达式在使用C语言处理此类问题的时候,通常会花十几分钟自己写一个校验函数。在使用支持正则的语言(php、C++11等)在处理此类问题时,通常使用正则。但是正则有一定使用难度,而且读起来也不直观。(这绝不意味正则不重要)。有的时候往往只想快速的

2016-07-06 20:28:57 649

原创 php中curl的使用

php使用curl下载网页的例子:<?php $curl=curl_init("http://www.baidu.com"); curl_setopt($curl,CURLOPT_HEADER,1); //若第三个参数设置为true,则抓取的内容会直接在网页上输出 curl_setopt($curl,CURLOPT_RETURNTRANSFER,false); $file

2016-07-03 15:44:36 529

原创 pdo中的事务处理

使用事务的好处:举个例子:银行用户A向用户B转账100元,这个操作被分为两个步骤:(1)A的账户余额被扣去100。(2)B的账户余额增加100。如果不使用事务的话,假设(1)执行成功了,而(2)失败了,那用户B没有收到应收款项,而用户A就白白受了损失。使用事务之后,不论(1)或者(2)哪一步失败,都可以回滚,即双方的账户余额恢复到之前的状态。不是所有的数据库都提供了

2016-06-13 19:23:17 561

原创 pdo中几种查询方式的区别

(1)executephp手册中对其的描述是:执行一条 SQL 语句,并返回受影响的行数。从中库看出,execute可应用于“增删改查”中的增删改。因为查询操作会返回一个结果集,而execute函数只能返回受影响的函数。(2)query用于执行一次的sql语句,返回一个PDOStatement结果集。此结果可认为是多维数组,可以直接使用。(3)prepare对于重复执行

2016-06-12 23:19:24 1195

原创 php中数组遍历的四种方式

首先要讲一点的是:PHP中的数组与C/C++中的数组不同。它是基于键值对结构的hash表来实现的(存在key/value的概念)。有点类似于python和lua中的dictionary。在没有显示指定key的情况下,默认以索引(0,1,2,3...)的形式来填充key字段。另外,数组的使用时有一个指针的概念,有点像C++中的迭代器。迭代器总是指向容器中当前使用的对象。下面来看php

2016-06-08 21:24:34 29964

原创 yaf框架控制器中的几个函数

最近在用yaf写一个demo,一个常见的场景是在用户未登录情况下自动跳转到登录页面。(后面发现yaf中文手册中也是以此为例,)先来看forward的用法: if(!$login) { $this->forward(null,'login','index'); return false; }第一个参数是要跳转的moduel名称,后面分别是controller和ac

2016-05-02 22:12:29 3489

原创 php中的explode和implode

explode的功能是使用一个字符串分割另一个字符串。返回一个分割后的数组。来看explode的基本用法:<?php$str = 'xaaxbbx';$data = explode('x', $str);echo "";print_r($data);echo "";?>程序输出为:Array(    [0] =>     [1] => aa 

2016-04-20 16:04:43 974

原创 php中的array_map,array_walk以及匿名函数

老规矩,先上代码再说话。<?phpfunction showArray($cols){    foreach ($cols as $obj) {        echo $obj . " ";    }    echo "";}function showObj($obj){    echo $obj . " ";}//ms

2016-04-17 02:42:21 7649

原创 C++11中的bind与lambda比较

#include #include #include #include using namespace std;using namespace std::placeholders;void f(int arg1,int arg2){ if(arg1>arg2) { cout<<arg1<<endl; }

2016-04-08 23:22:02 1275

原创 在linux中开发守护程序

linux下的守护程序(daemon)对应于windows下的服务程序。长期运行于后台。守护程序的启动和停止通常为(以apache2为例):service apache2 start/stop在前面的博客中有一篇《基于linux TCP的select服务器》,本文以该服务器的代码为基础,将其改造为一个daemon程序,实现用service *** start / stop来控制其启动和停止

2016-03-31 21:39:30 1021

原创 linux中gethostbyname和gethostbyaddr的使用

gethostbyname:根据主机名获取ipgethostbyaddr:根据ip获取主机名示例如下:#include "net_common.h"int main(){ char *name = "localhost"; //INET_ADDRSTRLEN值为16,用来标识ipv4地址长度 char str[INET_ADDRSTRLEN]; /

2016-03-30 00:04:28 3042

原创 在linux中使用cmake构建共享库(动态链接库)

cmake是一种跨平台的构建工具。它可以生成各种平台支持的makefile和project文件。在windows下,一般都是用visual studio来管理工程。事实上,就本人来说,使用cmake主要是为了避免在linux下手写makefile的繁琐。cmake在ubuntu下的安装:sudo apt-get install cmake下面来看如何使用cmake构建动态库

2016-03-29 02:34:17 17120 4

原创 C++11中使用shared_ptr和unique_ptr管理动态数组

在C++11中,若使用shared_ptr管理一个动态数组,则需手动制定一个删除器。auto sp = std::shared_ptr(new int[len], [](char *p){delete []p;});但是这样使用有点麻烦,经过查阅资料,发现可以使用shared_ptr为动态数组创建一个工厂函数。具体使用如下:#include #include #includ

2016-03-27 16:13:21 18651 1

原创 C++11智能指针之使用shared_ptr实现多态

指针除了管理内存之外,在C++中还有一个重要的功能就是实现多态。代码很简单,还是使用虚函数。与原生指针并没有什么区别:#include #include using namespace std;class parent{public: virtual void showinfo() { cout << "parent info" << endl;

2016-03-27 13:37:45 11668

原创 C++11智能指针之shared_ptr的使用(1)

先来看一段简单的代码:#include #include using namespace std;void test_smartpointer(shared_ptr sp){ (*sp)++;}void test_pointer(int *p){ (*p)++;}int main(){ int n1 = 5, n2 = 5; shared_ptr sp (n

2016-03-27 01:30:16 974

原创 C++ 11 查看硬件线程个数等信息

#include #include #include #include using namespace std;mutex mtx;void showinfo(){ lock_guard lk(mtx); cout<<"hardware thread is "<<thread::hardware_concurrency()<<endl; cou

2016-03-26 02:59:09 1746

原创 pthread和std::thread中条件变量的使用

程序很简单,使用两个线程对一个全局变量轮流进行累加。先来看pthread的版本:#include #include pthread_mutex_t lock;pthread_cond_t cond;int condition=0;unsigned long long g_count=0;void work1(void * arg){ while (1) {

2016-03-25 14:59:59 1188

原创 pthread的和std::thread的线程分离

#include #include #include #include #include #include #include #include #include #include void work1(void *arg){ char *mem1 = (char *)malloc(100); free(mem1);}void work2(void *

2016-03-25 01:36:11 2559 1

原创 pthread线程清理

#include #include #include #include #include pthread_mutex_t lk = PTHREAD_MUTEX_INITIALIZER;pthread_t thread_id2;void work1(void *arg){ pthread_mutex_lock(&lk); puts("thread 1 workin

2016-03-23 01:34:23 592

原创 pthread线程取消示例

#include #include #include #include #include pthread_mutex_t lk = PTHREAD_MUTEX_INITIALIZER;pthread_t thread_id2;void work1(void *arg){ pthread_mutex_lock(&lk); puts("thread 1 workin

2016-03-22 01:00:29 276

原创 pthread mutex使用的一些思考

#include #include #include #include #include #include #include #include #include pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER;int g_num = 0;void work1(void *arg){ while(1) {

2016-03-16 01:35:29 488

原创 linux下posix有名信号量的简单使用示例

#include #include #include #include #include #include #include int main(){ sem_t *s = sem_open("log", O_CREAT | O_EXCL , 0666, 0); if(s == SEM_FAILED) { perror(

2016-03-13 23:37:34 929 1

原创 linux高级IO之readv/writev

readv和writev可以同时操作多个缓冲区。 函数的使用很简单, 以readv为例: #include #include #include #include string.h>int main(){ char str0[2] = {0x00}; char str1[2] = {0x00}; struct iovec buff[2] = {

2016-03-12 23:43:44 885

AWK程序设计语言.pdf

AWK程序设计语言.pdf

2021-08-22

声音放大软件sound booster破解版

可将电脑声音放大至五倍。win7 X64亲测。特别适合看视频教程的时候使用。

2016-04-15

《Windows网络编程技术》高清PDF版+随书源码

本书专门讨论Windows网络编程技术,覆盖Windows 95/98/NT 4/2000/CE平台。内容包括NetBIOS和Windows重定向器方法、Winsock方法、客户端远程访问服务器方法。本书论述深入浅出、用大量实例详解了微软网络API函数的应用。配套光盘包含了所有实例代码,方便读者使用。本书适合中、高级程序设计人员以及网络设计与管理人员参考。 包  装: 平装本书通过应用实例由浅入深引入VC++集成开发环境下的网络编程技术。全书突出网络编程技术应用背景,发掘编程技术与网络应用开发的逻辑联系。内容主要包括Windows网络编程基础、单机资源共享的应用编程、基于NetBIOS网络编程、基于WinSock网络编程、直接网络编程和高级网络编程等。 本书有光盘源码,适合那些具有一定C和C++语言基础,期望逐步加强网络编程能力或网络编程相关综合训练的计算机类专业以及网络应用相关专业学生和技术人员使用。教师可以根据课时要求选择讲授本书的章节。第1章 Windows网络编程基础 1.1 Windows网络应用 1.1.1 常用的网络应用实例 1.1.2 网络应用的特点与运行环境 1.1.3 网络应用前景 1.2 Windows环境下的应用程序 1.2.1 应用程序的形态 1.2.2 应用程序的运行环境 1.2.3 应用程序的开发环境VC++ 1.3 Windows环境下的网络应用程序 1.3.1 网络应用程序的系统支持 1.3.2 网络应用程序运行环境的问题 1.3.3 网络应用程序的应用模型 第2章 单机资源共享的应用编程 2.1 进程间通信 2.1.1 进程间通信应用实例及概念 2.1.2 进程的创建与终止 2.1.3 内存文件映射 2.2 多线程通信 2.2.1 多线程应用实例及概念 2.2.2 线程的创建、挂起、激活和终止 2.2.3 线程的优先级 2.3 同步控制机制 2.3.1 同步控制应用实例及意义 2.3.2 同步控制类型及应用条件 2.3.3 应用实例的算法与实现 2.4 动态链接库 2.4.1 静态链接库与动态链接库的应用实例 2.4.2 动态链接库的创建与调用方法 2.4.3 动态链接库的应用的条件 第3章 基于NetBIOS的网络编程 3.1 基于NetBIOS的网络编程基础 3.1.1 网络应用实例与来源 3.1.2 NetBIOS提供的接口与服务 3.1.3 网络控制块NCB的应用 3.2 数据报通信编程 3.2.1 数据报通信应用模型 3.2.2 实例中的广播式数据报通信算法与实现 3.2.3 实例中定向型数据报通信的算法与实现 3.3 会话通信编程 3.3.1 会话通信应用模型 3.3.2 实例中会话服务器的算法与实现 3.3.3 实例中的会话客户算法与实现 第4章 基于WinSock的网络编程 4.1 基于WinSock网络编程的基础 4.1.1 网络应用实例与来源 4.1.2 Winsock提供的接口与服务 4.1.3 WinSock提供的函数调用 4.2 WinSock网络应用实例算法与实现 4.2.1获取主机网络信息 4.2.2 WinSock单播、多播与广播通信应用 4.2.3 WinSock会话通信应用 4.3 WinSock异步I/O 4.3.1 WinSock异步I/O应用实例 4.3.2 WinSock的I/O方法 4.3.3 异步I/O应用实例的算法与实现 第5章 直接网络编程 5.1 原始套接字编程 5.1.1 原始套接字简介 5.1.2 WinSock的原始套接字 5.1.3 Winsock原始套接字编程步骤 5.1.4 Winsock原始套接字实例 5.2 基于winPcap网络数据包捕获 5.2.1 WinPcap简介 5.2.2 网络数据包捕获的原理 5.2.3 Windlows捕获数据包的结构 5.2.4 利用WinPcap进行网络数据包的捕获和过滤的设计步骤 5.2.5 WinPcap开发环境配置 5.2.6 WinPcap实例分析 5.2.7 数据包捕获性能的优化 第6章 高级网络编程 6.1 简单MFC网络编程 6.1.1 网络聊天应用实例 6.1.2 MFC基本框架与接口 6.1.3 网络应用实例的实现 6.2 基于MFC Socket类编程 6.2.1 CAsyncSocket类和CSocket类 6.2.2 网络应用实例功能介绍 6.2.3 网络应用实例算法及实现 6.3 MFC WinInet编程 6.3.1 WinInet API编程 6.3.2 winInet类的编程模型 6.3.3 HTTP网络应用实例算法及实现 附录1 网络、应用程序开发说明 附1.1 网络体系结构的概念 附1.2 可执行文件的PE格式 附1.3 VC++的项目向导类型和文件类型 附1.4 Win32系统调用 附录2 部分Win32函数定义 附录3 NetBIOS的NCB结构、命令和错误代码 附3.1 网络控制块NCB的结构 附3.2 NCB ncb—command字段的命令代码 附3.3 NetBIOS错误代码 附录4 WinSoek数据结构、库函数和错误代码 附4.1 Winsockk数据结构 附4.2 Winsock基本套接字函数 附4.3 Winsock的扩展函数 附4.4 Winsockk错误代码 附录5 WinPcap定义、库函数 附5.1 定义 附5.2 函数

2016-04-04

TCPIP高效编程.改善网络程序的44个技巧].(Effective.TCPIP.Programming).(美)Jon.C.Snader.扫描版.pdf )

作为网络程序员,你是否发现自己的应用程序远远不够健壮?那么,你需要了解编写高效TCP/IP程序所需的各种知识。本书正是这么一本经典著作,它专注于协议族中那些细微的特性,提炼出的44个技巧可立竿见影地提升编程能力。 本书在介绍这些技巧的同时,对TCP/IP编程的基本思想和概念进行了说明,结合大量实例透彻解析了TCP/IP中的实践经验以及法则,还说明了如何避免网络编程中一些最常见的问题。书中提供的框架代码和常用函数库让你能够方便快捷地编写出应用程序,而无需操心一些细枝末节。 书中对下列问题提出了宝贵建议: IP编址、子网以及CIDR的研究 使用套接字接口代替XTI/TLI 使用两条TCP连接 使应用程序成为事件驱动的 使用一次大规模写操作代替多次小规模写操作

2016-03-01

FTP服务器库

a cross-platform C++ class which allows developers to use a simple, fast, and reliable FTP server within their program. 一个跨平台的开源 C++ FTP服务器库,自带例子,用法简单。本人项目中就在使用。

2014-09-28

VC6做的四六级倒计时工具

寒假的时候在家里做的 拿来分享一下 内有源码,直接编译即可

2013-04-17

计算机接口技术实验报告

计算机接口技术实验报告 我自己的作业 写了好久 呵呵

2012-06-05

计算机图形学报告

计算机图形学报告 我自己的作业 写了好久 呵呵

2012-06-05

c#数据库应用系统课程设计

c# 数据库应用系统 课程设计 我自己的作业

2012-06-05

asp邮件系统课程设计

asp邮件系统课程设计 我自己的作业

2012-06-05

C语言之四书五经.doc

C语言之四书五经.doc 学习C语言可以看看

2012-06-01

一键排版 zip

一键排版 zip

2012-06-01

一键排版.zip

最近课程设计任务重,这个工具减少了一部分工作量 还是蛮不错的

2012-05-31

Visual c++ 6.0

绿色版 本人亲自测试可以使用 WIN7下自己添加OPEN图标后也能正常使用

2012-05-31

C语言库函数使用大全CHM版.chm

C语言库函数使用大全CHM版.chm ,平时要用的时候查查很方便

2012-05-31

餐饮管理系统 C#

我就是用的这个交的作业 !

2012-05-31

C程序设计语言.pdf

内容简介 · · · · · ·   《C程序设计语言》(第2版新版)是由C语言的设计者Brian W.Kernighan和Dennis M.Ritchie编写的一部介绍标准C语言及其程序设计方法的权威性经典著作。全面、系统地讲述了C语言的各个特性及程序设计的基本方法,包括基本概念,类型和表达式、控制流、函数与程序结构、指针与数组、结构、输入与输出、UNIX系统接口、标准库等内容。

2012-05-31

UNIX 编程艺术(中文版)

UNIX 编程艺术(中文版) 经典书籍

2012-05-24

空空如也

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

TA关注的人

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