使用C++ STL库统计一散文中单词出现次数和行号
在开发过程中经常会遇到文件处理的情形,例如统计一篇文章单词的数量、行数、出现频率最高的几个单词等等。这篇文章主要通过C++来解析一篇文章,实现每个单词(不区分大小写)出现的总次数和出现的行号的统计。
Linux C++使用函数模板实现JSON数据快速和完整写入到文件
昨天在自己的CentOS7机器上编译了JSONCPP库,然后根据api写了下面这个简单的测试程序。代码涉及了文件流数据读取和写入、jsoncpp库的读写api的使用。整个处理流程是先读取一个json格式文件的内容,然后把这些内容分别用jsoncpp库的Json::FastWriter
(快速写入)和Json::StyledWriter
(完整写入)这两个方式写入到两个文件中,最后读取这两个文件并输出。
Git多仓库作子目录的双向同步:一次Git Subtree的实践
今年1月中旬的时候BZ在GitHub上收到Typecho社区组织typecho-fans的成员邀请,原来是想把所有TP的开源插件都整合到GitHub上进行维护。之前BLOG在使用Typecho的时候写了3个插件:新浪云存储SCS插件、移植自WordPress的音乐播放器插件和新浪微博同步插件,那如果放到typecho-fans上进行维护的话对使用者和开发者来说都是挺方便的。但是当时不知道怎么把之前这3个已经放在GitHub上进行维护的插件仓库作为子目录/仓库同步到typecho-fans的插件仓库中,所以一直都没有行动。
C++中使用vs2015和g++对new开辟的堆内存是否初始化的分析
在C++中使用new
运算符在堆中申请一内存块的使用权的同时还可以执行对该内存块的初始化工作。下面通过使用2个类对象和2个基本数据类型来分析使用new class_object
、new class_object()
和new int
、new int()
对这块内存的初始化情况。
Linux TCP客户端出现CLOSE_WAIT后进入死循环
在前文中讲述了Linux服务端TCP的某个链路变成CLOSE_WAIT
状态,然后由于客户端已经关闭了(发送了RST
标志的报文),那么服务端如果继续向这个链路中写入数据的话就会收到SIGPIPE
信号而终止,这篇文章主要通过客户端进入CLOSE_WAIT
后由于收到服务端产生的RST
标志报文进入死循环的情况。注:RST
表示复位,用来关闭异常的连接。
使用sed和awk查找和替换字符串处理Makefile文件(二)
使用sed和awk查找和替换字符串处理Makefile文件(一)
在《使用sed命令批量处理Makefile文件的脚本》文中使用sed命令对前文中的Makefile文件进行了替换、追加和删除操作,这篇文章通过使用sed和awk命令对该Makefile文件的某个字符串进行正则匹配查找以及替换。