自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Turbyun的博客

自强之外无上人之术

  • 博客(93)
  • 资源 (7)
  • 收藏
  • 关注

原创 1、容器初步掌握 vector

#include <iostream>#include <vector>using namespace std;int main(int argc, const char *argv[]){ int ival; vector<int> ivec; // insert | push_back while (ci...

2018-12-10 15:22:57 153

转载 Linux 添加开机启动项的三种方法

Linux 添加开机启动项的三种方法2017-12-06 BY IFUNBOX·0评论linux 添加开机启动项的三种方法。编辑文件 /etc/rc.local 输入命令:vim /etc/rc.local 将出现类似如下的文本片段: #!/bin/sh## This script will be executed *after* all the other init sc...

2018-11-14 18:47:40 696

原创 shell 脚本设置开机自启动

#!/bin/bashProgramPath=/home/kent/StartMainARG=$1FunStart(){ #启动程序的函数if [ -e $ProgramPath ];then #判断可执行文件是否存在 pid=$(pidof ${ProgramPath}) #判断这个程序是否已经启动 expr ...

2018-11-14 09:48:06 6942

转载 一个架构师的真正职责

一个架构师的真正职责“你总提及的那个词,它的含义与你想表达的意思并不一样。”——Inigo Montoya,电影《公主新娘》中的人物架构师的一个重要职责是,确保团队有共同的技术愿景,以帮助我们向客户交付他们想要的系统。在某些场景下,架构师只需要和一个团队一起工作,这时他们等同于技术引领者。在其他情况下,他们要对整个项目的技术愿景负责,通常需要协调多个团队之间,甚至是整个组织内的工作。...

2018-11-08 12:18:22 3369

转载 值得学习的C语言开源项目

值得推荐的C/C++框架和库【本文系外部转贴,原文地址:http://coolshell.info/c/c++/2014/12/13/c-open-project.htm】留作存档下次造轮子前先看看现有的轮子吧 值得学习的C语言开源项目- 1. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设...

2018-10-31 14:09:22 246

原创 创建消息队列 msg_id

const int BaseMsgq::proj_id_ = static_cast<int>('a');const char *BaseMsgq::pathname_ = "/root";BaseMsgq::BaseMsgq(){ msgq_key_ = ftok(pathname_, proj_id_); if (msgq_key_ < 0) ...

2018-10-30 15:23:49 645

原创 C实现的 简易的http服务器

#include <stdio.h>#include <ctype.h>#include <sys/types.h>#include <netinet/in.h>#include <sys/socket.h>#include <unistd.h>#include <stdlib.h>#include

2018-10-29 11:17:44 1673

转载 C++ jsoncpp结构体数据转换为json字符串 // json字符串转换为结构体数据

// jsoncpp使用方法总结// 结构体数据转换为json字符串// json字符串转换为结构体数据 // jsoncpp下载地址 http://sourceforge.net/projects/jsoncpp/ // 样例代码如下#include <stdio.h>#include <string.h>#include <memor...

2018-10-23 21:54:51 12109 6

原创 假定我们有3个程序,每个程序花费80%的时间进行I/O,20%的时间使用CPU

2 假定我们有3个程序,每个程序花费80%的时间进行I/O,20%的时间使用CPU,每个程序的启动时间和其需要使用CPU进行计算机的分钟数如表所示程序编号      启动时间              需要CPU时间(分钟)  1           00:00(零点零分)         3.5   2           00:10                     2  3  ...

2018-10-23 20:32:57 4678

原创 C++ 使用jsoncpp 封装及解析 json字符串(包含复杂数组)

#include <json/json.h>#include <string>#include <iostream>using namespace std;int main(){ //std::string strValue = "{\"name\":\"json\",\"array\":[{\"cpp\":\&

2018-10-23 17:31:00 19438 2

转载 C++ Jsoncpp 解析json字符串

使用方法 下载源码解压之后得到jsoncpp-src-0.5.0文件夹,我们只需要jsoncpp的头文件和cpp文件,其中jsonscpp的头文件位于jsoncpp-src-0.5.0\include\json,jsoncpp的cpp文件位于jsoncpp-src-0.5.0\src\lib_json。 json: json操作所需的头文件,此文件夹名字不能修改,因为lib_jso...

2018-10-23 17:05:41 4351

原创 sqlite3 -- 查找指定名字中年龄最大的一行所有字段信息

#include <stdio.h>#include <stdlib.h>#include <sqlite3.h>static int callback(void *data, int argc, char **argv, char **azColName){ int i; fprintf(stderr, "%s\n", (const ch...

2018-10-22 15:26:29 2073

转载 通过信鸽来解释 HTTPS

通过信鸽来解释 HTTPS原创: 伯乐在线 Linux爱好者 今天(点击上方公号,快速关注我们) 编译:伯乐在线/tsteho 密码学可能是一个难以理解的主题。它充满了数学证明。除非你真的需要开发密码系统,否则,如果你只想从宏观的角度了解密码学,你并不需要理解这些复杂的内容。 如果你抱着能够创建下一个 HTTPS 协议的期望打开这篇文章,我不得不遗憾地表示只有信...

2018-10-18 21:10:19 227

转载 放宽心,坚持住,一切都是最好的安排!

  早上起来,她发现家里停电了。于是没办法用热水洗漱,用电吹风吹头发,不能热牛奶,烤面包,只好草草打理一下就出门。 刚走进电梯,邻居家养的小狗一下子冲进来扑住,上周刚买的米白长裙上顿时出现两只黑黑的爪印儿。 开车被警察拦,才想起来今天限行,罚了一百。 到了公司,正好晚了一分钟,又罚五十。 冲进会议室开例会,老板正在宣布工作调整的名单。她的业务居然被无故暂...

2018-09-30 16:44:50 475

转载 TCP关闭连接(为什么会能 Time_wait,Close_wait ) ?

TCP关闭连接(为什么会能 Time_wait,Close_wait ) ?作者:胡文斌Tcp 关闭连接问题及注意 最近一段时间一直在学习阅读mina和nio的源码,也发现了一些问题无法解决,然后重读了一下tcp协议,收获颇多。(这就是带着问题去读书的好处)这次就和大家分享一下我们的netframework服务总会抛出一个“connet reset by peer”的原因吧...

2018-09-30 15:10:12 1086

转载 从 TCP 三次握手说起:浅析TCP协议中的疑难杂症 ( 1 )

从 TCP 三次握手说起:浅析TCP协议中的疑难杂症 ( 1 ) 说到TCP协议,相信大家都比较熟悉了,对于TCP协议总能说个一二三来,但是TCP协议又是一个非常复杂的协议,其中有不少细节点让人头疼点。本文就是来说说这些头疼点的,浅谈一些TCP的疑难杂症。那么从哪说起呢?当然是从三次握手和四次挥手说起啦,可能大家都知道TCP是三次交互完成连接的建立,四次交互来断开一个连接,那为什么是三...

2018-09-30 15:06:42 317

转载 关于UDP-读这篇就够了(疑难杂症和使用)

关于UDP-读这篇就够了(疑难杂症和使用)本文为转载文章原文链接:https://www.qcloud.com/community/article/848077001486437077版权归原文所有  关于UDP 面向报文的传输方式决定了UDP的数据发送方式是一份一份的,也就是应用层交给UDP多长的报文,UDP就照样发送,即一次发送一个报文。那么UDP的报文大小由哪些影...

2018-09-29 16:59:47 1016

转载 哈希表 -- C语言实现

1 哈希表原理这里不讲高深理论,只说直观感受。哈希表的目的就是为了根据数据的部分内容(关键字),直接计算出存放完整数据的内存地址。试想一下,如果从链表中根据关键字查找一个元素,那么就需要遍历才能得到这个元素的内存地址,如果链表长度很大,查找就需要更多的时间.void* list_find_by_key(list,key){ for(p=list;p!=NULL; p=p-&...

2018-09-27 17:09:53 807

原创 线程与信号 -- pthread_sigmask() sigwait()

一、主线程发送USR1信号给子线程1  ,子线程中添加 信号捕捉,子线程2没有捕捉信号,导致直接退出#include <stdio.h>#include <pthread.h>#include <stdlib.h>#include <unistd.h>#include <signal.h>#include <errn...

2018-09-07 12:02:03 872 1

原创 atfork() --同步父子进程 pthread_mutex_lock加解锁问题

问题: 父进程先开启一个子线程,子线程中调用pthread_mutex_lock。再fork子进程,子进程同样调用pthread_mutex_lock ,导致的死锁问题。sleep()  替换 nanosleep()   纳秒精度 //sleep(1); struct timespec ts = {1, 0}; nanos...

2018-09-07 09:37:17 1233

原创 fork -- 子进程共享父进程打开的文件描述符

#include <stdio.h>#include <string.h>#include <stdlib.h>#include <unistd.h>#define FILE_PATH "file_point"int main(int argc, const char *argv[]){ pid_t pid; //c...

2018-09-06 14:28:28 1398

原创 TCP 网络超时 select 及 recv 实现

fd_set set; struct timeval st_time; st_time.tv_sec = 3 * 3; st_time.tv_usec = 0; while (1) { strcpy(sendbuf, "hello every"); FD_ZERO(&set); ...

2018-08-28 11:21:22 2247

转载 va_start和va_end使用详解

 转载于:http://www.cnblogs.com/hanyonglu/archive/2011/05/07/2039916.html   本文主要介绍va_start和va_end的使用及原理。  在以前的一篇帖子Format MessageBox 详解中曾使用到va_start和va_end这两个宏,但对它们也只是泛泛的了解。  介绍这两个宏之前先看一下C中传递函数的参数时...

2018-08-17 18:15:38 184

原创 网络超时 -- 采取 SO_RCVTIMEO套接字选项设置 ( recv / recvfrom)

 #include <sys/types.h> #include <sys/socket.h> #include <stdio.h> #include <netinet/in.h> #include <arpa/inet.h> #include <unistd.h> #include <...

2018-08-10 15:29:53 1603

原创 字典树 Trie_node

一、知识简介        最近在看字符串算法了,其中字典树、AC自动机和后缀树的应用是最广泛的了,下面将会重点介绍下这几个算法的应用。      字典树(Trie)可以保存一些字符串->值的对应关系。基本上,它跟 Java 的 HashMap 功能相同,都是 key-value 映射,只不过 Trie 的 key 只能是字符串。  Trie 的强大之处就在于它的时间复杂度。它的插入和...

2018-08-08 10:39:34 1746 1

原创 Doing it

作者:Oscarwin链接:https://www.zhihu.com/question/34574154/answer/253165162来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 C和C++语言基础参考书籍:《C++ primer》,《effective C++》,《STL源码解析》,《深度搜索C++对象模型》extern关键字作用 s...

2018-08-03 10:14:35 317

原创 网络传输文件 -- 循环发送文件

freadFILE *fopen(const char *path, const char *mode);size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);size_t fwrite(const void *ptr, size_t size, size_t nmemb, ...

2018-08-01 18:14:17 493

原创 网络传输文件 -- 一次性得到文件大小

client.c#include <sys/types.h>#include <sys/socket.h>#include <stdio.h>#include <netinet/in.h>#include <arpa/inet.h>#include <unistd.h>#include <string....

2018-08-01 15:00:17 499

原创 升级 gcc g++ 版本 支持-std=c++11 特性

CentOS 6.6 升级GCC G++ (当前最新GCC/G++版本为v6.1.0)或者 添加yum 的 repo 文件 也不行, 只能更新到 4.4.7!采取手动编译安装了1、 获取安装包并解压wget http://ftp.gnu.org/gnu/gcc/gcc-6.1.0/gcc-6.1.0.tar.bz2tar -jxvf gcc-6.1.0.tar.bz2当然,...

2018-07-30 14:39:23 19882 4

原创 算法 -- 链表插入排序

问题: 这个代码产生0 ~ 999之间的N个随机数,构建每个节点代表一个数的链表,然后重新排列这些节点,使之按照顺序出现。 分析:1、b链表为空时,  x = b;       x->next = NULL;    t->next = NULL;   x->next = t;                           2、待插入的数比已连接上的数小  ...

2018-07-24 16:15:12 310

原创 算法 -- 约瑟夫问题

假设有N个人,决定选出一个领导人,方法如下:所有人排成一个圆圈, 按顺序数数,每隔第M个人出局,此时,他两边的人靠拢,重新排成一个圆圈,找出哪个人将会是最后一个留下的。 (比如N = 9 , M = 5 . 出局顺序为 5 1 7 4 3 6 9 2   剩下 8) 链表节点结构体typedef struct node_S{ int va...

2018-07-24 09:46:40 499

原创 算法 -- 100以内的素数

#include <stdio.h>#include <stdlib.h>#define N 100int main(int argc, const char *argv[]){ int i,j; int num[N]; for (i = 2; i < N; i++) num[i] = 1; for...

2018-07-23 15:03:35 302

原创 共享内存 --BSD匿名内存映射 (计数加一)

#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <sys/mman.h>#include &a

2018-07-12 09:47:50 277

原创 共享内存 --内存映射文件 计数加一

共同 增加同一个变量的值 最终输出19999#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <sys/...

2018-07-11 16:33:30 235

原创 进程 --fork() 初步探究 及写时复制

COW技术初窥:     在Linux程序中,fork()会产生一个和父进程完全相同的子进程,但子进程在此后多会exec系统调用,出于效率考虑,linux中引入了“写时复制“技术,也就是只有进程空间的各段的内容要发生变化时,才会将父进程的内容复制一份给子进程。      那么子进程的物理空间没有代码,怎么去取指令执行exec系统调用呢?      在fork之后exec之前两个进程用的是相同的物理...

2018-07-11 11:30:33 187

原创 C结构体 直接赋值及 memcpy

一、C结构体可直接 赋值二、C结构体可memcpy()#include <stdio.h>#include <string.h>typedef struct mystruct{ int a; short b; char sh[16];}mystruct_T;int main(int argc, const char *argv[...

2018-06-27 16:14:33 11662

原创 linux --消息队列 (文件服务器)

client.c #include "msgque.h"#include "unpipc.h"#include <string.h>#include "myerror.h"#define path_file "/home/unix/unpv/msg_queue/src/msgque.c"#define path_file2 "app/main.c"#defi

2018-06-21 15:43:51 437

原创 linux 实现非阻塞connect

Linux 怎样实现非阻塞connect前言凡是接触过socket编程的,对connect函数一定不陌生。因为socket是面向连接的,所以在进行读写操作前我们首先要进行连接,而所谓连接也就是我们常说的三次握手,这个过程就是在connect函数中完成的。虽然connect函数本身不具备阻塞的功能,但是我们可以通过对socket进行设置和使用select函数可以设置阻塞时间的特性实现非...

2018-06-15 13:46:39 524

原创 man 环境搭建

Centos: yum install man-pages libstdc++-docsUbuntu: sudo apt-get install manpages-posix manpages-posix-dev

2018-05-04 09:16:15 192

原创 用printf做彩色日志记录 及宏定义printf

[C编程在Linux上]用printf做彩色日志记录写了一个简单的程序,但是考虑到有一些信息是需要打印在控制台上的,就像在windows上启动apache tomcat时控制台显示的信息一样。琢磨一会儿之后,对printf进行了封装,支持控制台打印日志,支持输出到文件里。不过控制台都是固定颜色的,不好看。于是在网上找了一下资料,printf还真支持输出不同的颜色,如下:实例:printf("\03...

2018-04-26 09:42:22 1022

数据结构与算法 C语言描述 (原书第2版) 高清带标签

《数据结构与算法分析:C语言描述(原书第2版)》是《Data Structures and Algorithm Analysis in C》一书第2版的简体中译本。原书曾被评为20世纪顶尖的30部计算机著作之一,作者Mark Allen Weiss在数据结构和算法分析方面卓有建树,他的数据结构和算法分析的著作尤其畅销,并受到广泛好评.已被世界500余所大学用作教材。 在《数据结构与算法分析:C语言描述(原书第2版)》中,作者更加精炼并强化了他对算法和数据结构方面创新的处理方法。通过C程序的实现,着重阐述了抽象数据类型的概念,并对算法的效率、性能和运行时间进行了分析

2018-05-04

The C Programming Language中文版+英文版 经典C编程书籍高清PDF+书签

C语言编程必看书籍之一,个人感觉入门用C和指针, 提升看The C Programming Language,习题加课后讲解认真做,C语言精通不是问题

2018-04-12

Python初学教程:《简明Python教程》.rar 高清PDF中文+标签

《简明Python教程》 精巧,强大。无论您刚接触电脑还是一个有经验的程序员,本书都将有助您学习使用Python语言。经典的入门书籍 作者:Swaroop C. H。译者:沈洁元

2018-04-12

Linux实现批量上传FTP服务器的shell脚本

实现批量上传FTP服务器备份功能,并支持压缩,可配置备份频率

2017-07-07

空空如也

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

TA关注的人

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