自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 收藏
  • 关注

转载 boost asio网络编程

基本概念asio基于两个概念: I/O服务,抽象了操作系统的异步接口boost::asio::io_service::service: boost::asio::io_service I/O对象,有多种对象boost::asio::basic_io_object: boost::asio::ip::tcp::socket boost::asio::ip::tcp...

2019-06-17 09:44:53 1756

转载 redis:网络编程

Redis在anet.h和anet.c中封装了底层套接字实现:1.anetTcpServer,建立网络套接字服务器,完成对socket(),bind(),listen()等操作的封装,返回socket的fd。int anetTcpServer(char *err, int port, char *bindaddr){ int s; struct sockaddr_i...

2019-06-13 11:09:19 217

转载 Redis:ae事件模型

1.Redis的事件模型库大家到网上Google“Redis libevent”就可以搜到Redis为什么没有选择libevent以及libev为其事件模型库,而是自己写了一个事件模型。 从代码中可以看到它主要支持了epoll、select、kqueue、以及基于Solaris的event ports。主要提供了对两种类型的事件驱动:1.IO事件(文件事件),包括有IO的读事件和写事件。2...

2019-06-13 10:57:36 830

转载 QT多线程使用moveToThread

使用线程有两种方法:一、平时我们使用线程的时候一般是继承QThread,实现它的run()函数,将需要在线程执行的代码放在run()里边运行。如果需要在线程 { while(bRun)//如果需要退出线程就将bRun设置为false. { qDebug()<<"run thread ID = "<<QThread::c...

2019-06-10 14:27:37 1261

转载 多线程使用libcurl

用libcurl一段时间遇到莫名其妙的程序崩溃的情况,开始觉得是线程栈溢出导致的段错误,专门增加了线程栈的大小,还是有问题。线程也是分离的。用valgrind定位到问题可能出现在curl的调用上。排查的时候也发现了libcurl一些额外的坑,现做个总结笔记。1.、线程使用libcurl访问时,设置了超时时间,而libcurl库不会为这个超时信号做任何处理,信号产生而没有信号句柄处理...

2019-06-03 10:27:11 438

转载 cmake的使用总结

https://blog.csdn.net/wzzfeitian/article/details/40963457CMakeLists.txt例子cmake_minimum_required(VERSION 2.8) #set(CMAKE_C_COMPILER "D:\VS2008Release\VC\bin\amd64")#set(CMAKE_CXX_COMPILER "D:\V...

2019-04-17 11:06:20 198

转载 OPC客户端的建立

原文:https://blog.csdn.net/wuyijc/article/details/6987510一.导入OPC官方文件。我首先在VC6.0中建立一个基于对话框的项目,在项目中加入了4个文件"opcda_i.c"OPC数据存取接口"opcda.h"OPC数据存取2.0头文件"opccomn_i.c"OPC公共接口定义"...

2019-04-15 10:43:35 980

转载 OPCServer 提供的全部接口说明

http://www.dqjsw.com.cn/dianqi/OPC/301.html1.What is OPC?OPC是OLE for Process Control的缩写。顾名思义,OPC是一种利用微软的COM/DCOM技术来达成自动化控制的协定,根据OPC Specification 的定义,OPC is "a standard mechanism for communicating t...

2019-04-15 10:23:13 2254

转载 如何使用KepServerEx进行数据模拟

https://blog.csdn.net/lordwish/article/details/79464090

2019-04-15 10:12:05 2927

原创 c++11中线程池和定时器的使用

简介本篇文章主要介绍线程池和定时器的混合使用,实现多线程的时间调度线程池:一种线程的使用模式,线程过多会带来调度开销,进而影响缓存局部性和整体性能。而线程池维护着多个线程,等待着监督管理者分配可并发执行的任务。这避免了在处理短时间任务时创建与销毁线程的代价。线程池不仅能够保证内核的充分利用,还能防止过分调度。可用线程数量应该取决于可用的并发处理器、处理器内核、内存、网络sockets等的数...

2019-02-17 15:07:27 1879

原创 C#中关于文件读写的若干问题及总结

   很久没有写博客了,之前很长一段时间忙于毕设和找工作,现在工作了,觉得自己还有很多不足,书到用时方恨少,在进行项目时会遇到很多问题,感谢各位博客大牛的技术分享,也顺利完成了自己的功能任务,下面针对C#中文件读写问题进行一些总结。1.最简单的一种文件拷贝和剪切方式 string SourcePath =“源文件全路径”;string TargetPath = “目标文件全路径”;...

2018-07-27 15:57:45 432

原创 QT 基于TCP协议的网络通信

QT下基于TCP协议的网络通信分为服务端和客服端程序两部分,与之前写的C网络通信不同的是QT下服务器端只需要定义一个服务器对象和用来进行通信的TcpSocket,只需通过监听和连接实现与客服端的连接;客服端中需要定义一个Tcpsocket,通过connectToHost(IP,端口号)进行连接。部分源代码如下:服务器端:widget.h#ifndef WIDGET_H#define WIDGET_...

2018-04-06 15:11:48 1079

原创 C++ :用multimap编写简单的通讯录小程序

#include &lt;iostream&gt;#include &lt;map&gt;#include &lt;string&gt;#define FALSE 0#define TRUE 1using namespace std;class User{public: User(int id,string name ,string tel) { this-&gt;id =id; this-&...

2018-03-25 21:03:12 363

转载 程序内存空间(代码段,数据段,堆栈段)

点击打开链接心得:常量区(常量区中有的常量在常量数据段,有的在代码段,但有的常量如:const修饰的局部常量并没有放在常量区中),例如:局部变量 char a[ ]="hello","hello"字符串常量存在数据段中,而char *b="hello",此时“hello”字符串常量在代码段中,你可以使用 a[1]='w'改变数组a的值,但是你不能通过指针操作即b[1]='w'改变指针指向常量的值,...

2018-03-21 21:47:23 688

原创 Linux下 基于TCP协议下的C/S架构的网络聊天室 C程序

一、 实现目标  一个在 Linux 下可以使用的聊天软件,要求至少实现如下功能: 1. 采用 Client/Server 架构 2. Client A 登陆聊天服务器前,需要注册自己的 ID 和密码 3. 注册成功后,Client A 就可以通过自己的 ID 和密码登陆聊天服务器 4. 多个 Client X 可以同时登陆聊天服务器之后,与其他用户进行通讯聊天 5. Client A 成功登陆后...

2018-03-21 19:27:49 1857 1

原创 C++ string类的封装

//mystring.h   头文件#ifndef _MYSTRING_H_#define _MYSTRING_H_#include &lt;iostream&gt;using namespace std;class String{ friend ostream&amp; operator&lt;&lt;(ostream &amp;out,String &amp;str);public: Stri...

2018-03-21 18:59:06 1841

原创 动态数组类的封装

//MyArray.h  头文件#ifndef _MYARRAY_H_#define _MYARRAY_H_#include &lt;iostream&gt;using namespace std;class Array{ friend ostream&amp; operator&lt;&lt;(ostream&amp; out, Array &amp;a);private: double *m_...

2018-03-21 15:33:30 505

转载 makefile经典教程(掌握这些足够了)

点击打开链接

2018-03-21 14:59:46 969 1

转载 大端小端模式,及其判别方法

点击打开链接

2018-03-19 09:54:04 450

原创 电子通讯录项目

制作一个电子通讯录,通过该通讯录存放好友ID号,姓名(英文),手机号,家庭住址,公司电话,并完成指定功能。 功能模块:主界面:菜单:1)添加好友信息(要求:ID不能相同,相同报错,重新输入,添加成功后提示)                                       2)列表好友信息(要求:按姓名首字母升序排序)                                   ...

2018-03-04 16:57:01 697

原创 停车场项目 停放栈 让路栈 等候队列

停车场项目需求问题描述:停车场是一个能放 n 辆车的狭长通道,只有一个大门,汽车按到达的先后次序停放。若车场满了,车要停在门                 外的便道上等候,一旦有车走,则便道上第一辆车进入。当停车场中的车离开时,由于通道窄,在它后面的车  要先退出,待它走后在依次进入。汽车离开时按停放时间收费。基本功能要求:               (1)建立三个数据结构分别是:停放栈、让...

2018-03-04 16:49:47 363

转载 TCP协议中的三次握手四次挥手

点击打开链接

2018-03-04 08:58:35 184

原创 排序: 冒泡排序 直接插入排序 直接选择排序 希尔排序

#include&lt;stdio.h&gt;#include&lt;stdlib.h&gt;#include&lt;time.h&gt;#define TRUE 1#define FALSE 0typedef int Status; int countr=0,countc=0;#define MAXSIZE 1000 /* 用于要排序数组个数最大值,可根据需要修改 */typedef struc...

2018-02-19 23:00:01 415

原创 用标准i/0 测文件大小(程序)

#include&lt;stdio.h&gt;#include&lt;stdlib.h&gt;#include&lt;errno.h&gt;int main (int agrc ,char *agrv[ ]){    FILE *fp;    int ptr[20];    if((fp=fopen("slist.c","rb"))==NULL){    perror("error:");    ..

2018-02-15 14:19:51 290

原创 标准i/0实现Linux中cp功能

#include &lt;stdio.h&gt;#include &lt;string.h&gt;#include &lt;errno.h&gt;#include&lt; stdlib.h&gt;#define MAXSIZE 2048int main(int agrc ,char ** agrv[ ]){    FILE *from_fd;                  FILE * to_...

2018-02-15 13:16:55 476

原创 利用文件操作的系统调用 实现 Linux 中的cp 功能

#include &lt;sys/types.h&gt;#include &lt;sys/stat.h&gt;#include &lt;fcntl.h&gt;#include &lt;stdio.h&gt; #include&lt;stdlib.h&gt;#include &lt;errno.h&gt;#include&lt;string.h&gt;#define MAXSIZE 1024 int

2018-02-14 20:05:02 600

转载 同步IO和异步IO的区别

点击打开链接

2018-02-08 09:31:13 218

原创 单链表实现通讯录功能

#include #include #include #define MAX 100#define TRUE 1#define FALSE 0#define Status inttypedef struct                                        /*定义结构体类型 为 DataType*/{char nam

2018-02-03 18:54:42 851

原创 static 作用与说明 局部变量与全局变量

在c语言中static的作用如下第一、在修饰变量的时候,static修饰的静态局部变量只执行一次,而且延长了局部变量的生命周期,直到程序运行结束以后才释放。 第二、static修饰全局变量的时候,这个全局变量只能在本文件中访问,不能在其它文件中访问,即便是extern外部声明也不可以。 第三、static修饰一个函数,则这个函数的只能在本文件中调用,不能被其他文件调用。Static

2018-01-31 22:48:52 3627

原创 利用线性表编写简单的通讯录程序

#include #include #include #define MAX 100#define TRUE 1#define FALSE 0#define Status inttypedef struct node{char name[12];char addr[40];char mphone[12];char tel[14];

2018-01-31 22:40:25 3880 1

原创 编写程序,打印任意行数的菱形星号组合

设计思路:确定一个二维坐标x轴,y轴,菱形的“*”关于y轴对称,只需写出y轴右半平面的程序以此类推,完成要求。通过找出“*”的x坐标与y坐标的关系,依次改变y的值得到x值,循环输出"*"和“   ”,完成编程。#include#includeint main(){   int y,x,m,h;  printf("请输入菱形行数:");scanf("%d",&h);

2018-01-26 19:43:17 1423

原创 输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数。(google面试题)

该程序可以统计 1-n 任意输入值中1出现的次数,主函数进行1-n 个数的循环,通过取余实现对数字1的计数。程序如下:  #include  int main()  {   int i,a,b,n;   int j=0;   printf("请输入一个数:");   scanf("%d",&n);  for(i=1;i {b=i;while(b!

2018-01-26 19:03:57 783

转载 linux中标准输入,标准输出,标准错误输出及管道的使用

文本流文件用于数据的存储,相当于一个个存储数据的房子。我们之前说,所谓的数据是0或者1的序列,但严格来说,Linux以字节(byte)来作为数据的单位,也就是说这个序列每八位(bit)为一个单位(八位二进制对应的十进制范围为0到255)。使用ASCII编码,可以将这样一个字节转换成为字符。所以,在Linux中,我们所说的数据,完全可以用字符表达出来,也就是说文本(text)的形式。实际上,

2018-01-23 12:20:07 8330

转载 虚拟机网络链接的三种方式

点击打开链接

2018-01-21 21:36:02 320

转载 vmware tool 在ubutu下安装

点击打开链接

2018-01-21 20:48:35 162

空空如也

空空如也

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

TA关注的人

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