自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(128)
  • 资源 (46)
  • 收藏
  • 关注

原创 用OTL库连接读取access数据库

一.环境及创建一个数据库编程环境:VS2010数据库:access2007OTL库载地址:http://otl.sourceforge.net/home.htm使用access2007创建一个数据库 MetGS.accdb ,表名为:ModelInfo二. 添加用户数据库源            控制面板---管理工具---数据源(ODBC)-----用户D

2015-09-15 15:58:51 1723 6

原创 Ubuntu下VirtualBox虚拟机与主机机互相ping通的简单配置心得

virtualbox 是个非常优秀的软件,通常与主机之间有3种方式,Bridged方式,NAT方式,host-only方式,安装的默认方式是NAT,但是这种方式在virtualbox虚拟机下有个缺点,就是虚拟机可以ping通主机,虚拟机也可以通过主机访问外网,但是主机ping不通虚拟机,让人很头痛.linux下在装个虚拟机本来想配置个服务器,现在都ping不通,还怎么玩.下面,我慢慢说下我的解决方

2015-08-06 11:38:22 20676 1

原创 二叉排序树

1.二叉排序树的定义  二叉排序树(Binary Sort Tree)又称二叉查找(搜索)树(Binary Search Tree)。其定义为:二叉排序树或者是空树,或者是满足如下性质的二叉树:①若它的左子树非空,则左子树上所有结点的值均小于根结点的值;②若它的右子树非空,则右子树上所有结点的值均大于根结点的值;③左、右子树本身又各是一棵二叉排序树。2.二叉排序树的性质

2015-07-03 19:40:43 888

原创 POSIX条件变量

一.条件变量    当一个线程互斥地访问某个变量时,可能发现在其他线程改变状态之前,它什么也做不了.例如,一个线程访问队列时,发现队列为空,它只能等待,直到其他线程将一个节点添加到队列中,这种情况需要条件变量.    条件变量是利用线程间共享的全局变量进行同步的一种机制,主要包括两个动作:一个线程等待"条件变量的条件成立"而挂起;另一个线程使"条件成立"(给出条件成立信号)。为了防止竞争,

2015-06-08 11:40:58 1296

原创 POSIX信号量与互斥锁

3种用于线程同步的机制: POSIX信号量,互斥锁和条件变量一.POSIX信号量常用的POSIX信号量函数如下    int sem_init(sem_t *sem, int pshared, unsigned int value);//初始化一个信号量    int sem_destroy(sem_t *sem); //销毁信号量        int sem_w

2015-06-07 22:20:39 963

原创 POSIX线程(二)

一. 线程属性    (1) 初始化与销毁属性          int pthread_attr_init(pthread_attr_t *attr);           int pthread_attr_destroy(pthread_attr_t *attr);    (2)获取与设置分离属性       int pthread_attr_setdetachstat

2015-06-06 19:17:14 633

原创 POSIX 线程(一)

一. POSIX线程先关函数POSIX线程库    与线程有关的函数构成一个完整的系列,绝大多数函数的名字都是以"pthread"打头的    要使用这些函数库,引入头文件    连接这些线程函数库时要使用编译器命令的"-lpthread"选项1. pthread_create函数功能:创建一个新的线程原型: int pthread_create(pthread_t

2015-06-06 17:35:15 676

原创 线程简介

一. 什么是线程    在一个程序里的一个执行路线就叫做线程(thread).更准确的定义是:线程是"一个进程内部的控制序列"    一切进程至少都有一个执行线程.二. 进程与线程    进程是资源竞争的基本单位    线程是程序执行的对小单位    线程共享进程数据,但也拥有自己的一部分数据        线程ID        一组寄存器        栈

2015-06-06 11:39:31 650

原创 POSIX共享内存

POSIX共享内存不需要自己手动挂载,只要打开成功,就会自动挂载.一般挂载在 /dev/shm 目录下cd /dev/shmod -c xyz 1. shm_open 函数功能:用来创建或打开一个共享内存对象原型:    int shm_open(const char* name,int oflag,mode_t mode);参数:    name:共享内存

2015-06-06 10:40:29 1769

原创 posix 消息队列

System V IPC    消息队列    共享内存    信号量POSIX IPC    消息队列    共享内存    信号量    互斥锁    条件变量    读写锁    自旋锁    文件锁 Posix消息队列 和  System  v消息队列的区别(1) 对posix消息队列的读总是返回最高优先级的最早消息,对syste

2015-06-05 15:46:51 596

原创 System V共享内存与信号量综合应用之生产者与消费者问题解决

一.生产者---消费者问题有一个仓库(缓冲区),生产者生产出来的东西往里面扔,消费者从里面取东西。如何安排能够使两者之间不冲突。一些基本的约束条件:    1.仓库只有一个,且有固定大小。生产者有多个消费者有多个    2.生产者占用仓库前要判断仓库是否满,满了就不能争用    3.消费者使用仓库前要判断仓库是否空,空了就不能争用    4.仓库中要么只有消费者要么

2015-05-26 16:33:21 2734 2

原创 System V 信号量(三)之用信号量解决哲学家进餐问题

一.哲学家就餐问题          5个哲学家,5个筷子。5个哲学家围坐在一张桌子上,筷子放在分别放在每个哲学家的两旁。如果所有哲学家在某个时刻同时拿起左边的筷子,那么右边的筷子就都被其他的哲学家拿了,造成大家都无法吃饭。但是大家都不想放下左边的筷子(规则是先拿起左边筷子在拿起右边的,吃完饭在放下左,再放下右),这就是死锁。解决这个问题有个办法是在拿起筷子前先判断左右两个筷子是否

2015-05-26 10:25:56 22218 1

原创 System V 信号量(二)

一.进程的同步与互斥  进程间的两种关系:同步和互斥。       同步就是把异步环境下的一组并发进程,因直接制约而互相发送消息,二者进行互相合作、互相等待,使得各进程按一定的速度执行的过程。      互斥是指不允许两个以上的共享该资源的并发进程同时进入临界区。其中直接制约是指一组在异步环境下的并发进程,各自的执行结果互为对方的执行条件,从而限制各进程的执行速度的过程。由于共享某

2015-05-25 21:30:28 595

原创 System V 信号量(一)

一.信号量    信号量和P,V原语由Dijkstra提出    信号量          互斥:p,v在同一个进程中          同步:p.v在不同进程中    信号量值含义          s>0:s表示可用资源的个数          s=0:表示无可用资源,无等待进程          s    struct semaphore    {

2015-05-25 10:45:43 744

原创 System V 共享内存

一.共享内存数据结构对于每个共享内存区,内核维护如下信息结构,定义在, 在ubuntu中路径:/usr/include/linux/shm.h二. System V共享内存函数:#include #include int shmget(key_t key, size_t size, int shmflg);    void *shmat(

2015-05-23 23:39:17 646

原创 共享内存简介

一.共享内存         共享内存区是最快的IPC形式,这些进程间数据传递不再涉及到内核,换句话说是进程不再通过执行进入内核的系统调用来传递彼此的数据.上图需要经过四次数据复制使用共享内存,只需要两次系统调用.二、mmap 函数#include 功能:将文件或者设备空间映射到共享内存区。原型     void *mma

2015-05-23 14:42:01 638

原创 System V消息队列(三)

利用消息队列实现回射客户/服务器队列达到复用的目的     类型区分: 服务器用1标识类型,客户端用自己的进程 标识类型    对于服务器端来说,接收到一个消息结构体的类型如果为1,表示是客户请求,而mtex 字段的前4个字节存放着不同进程的pid ,后续字节才是真正的数据,服务器回射客户端时,将pid 作为类型,mtex 为实际数据,客户端只接收对应类型的数据,故可以区分不同

2015-05-23 10:54:04 595

原创 Sytem V消息队列(二)

一.msgsnd 函数    功能:把一条消息添加到消息队列中    int msgsnd( int msqid,                // 由msgget返回的消息队列标志吗                         const void *msgp,   // 一个指针,只想准备发送的消息                         size_t msg

2015-05-23 10:03:23 988

原创 System V 消息队列(一)

一、消息队列    1、消息队列提供了一个从一个进程向另外一个进程发送一块数据的方法    2、每个数据块都被认为是有一个类型,接收者进程接收的数据块可以有不同的类型值    3、消息队列与管道不同的是,消息队列是基于消息的,而管道是基于字节流的,且消息队列的读取不一定是先入先出。    4、消息队列也有管道一样的不足,就是每个消息的最大长度是有上限的(MSGMAX),每个消息队列

2015-05-23 09:14:17 725

原创 16.unix域协议

一.Unix域协议Uinx域套接字有几个理由:         UNIX域套接字用于在同一台机器上运行的进程之间的通信。虽然因特网域套接字也可以达到同一目的,但UNIX域套接字的效率更高。         UNIX域套接字仅仅复制数据;它们并不执行协议处理,不需要添加或删除网络报头,无需计算检验和,不要产生顺序号,无需发送确认报文。         UNIX域套接字

2015-05-17 23:43:24 575

原创 15.基于UDP协议的聊天室程序

使用UDP协议完成一个聊天室程序的小项目,大部分代码都有注释,一看就能看到的.实现的功能:              (1)查看/显示已经登陆的用户信息              (2)向已登陆的用户发送消息              (3)输出错误消息,给予提示              (4)退出共有三个文件:chat_public.h

2015-05-17 23:14:22 3019

原创 14.基于UDP协议的socket编程(1)

一.UDP 网络通信模型下面依照通信流程,我们来实现一个UDP回射客户/服务器服务器程序#include #include #include #include #include #include #include #include #define ERR_EXIT(m) \ do{ \ perror(m); \ exit(EXIT

2015-05-09 16:52:33 572

原创 13.epoll

一.用C++ 和 epoll 实现一个服务器      用C++ 实现一个epoll并发服务器#include #include #include #include #include #include #include #include #include #include #include #include #include #include #incl

2015-05-09 13:31:46 688

原创 Linux基础知识复习之命令篇

一.常用命令1.目录结构/bin:常用命令/boot:启动程序/dev:设备文件/etc:启动,关闭,配置程序与文件/home:用户工作根目录/lib:共享连接库/root:超级用户的工作目录/sbin:系统管理员常用管理程序/tmp:临时文件/lost+found:系统出现异常时,用于保存部分资料/misc:常用工具/mnt:光驱,硬盘等的挂载点/media:光驱的自动挂载

2015-05-05 14:13:02 1327

原创 shell脚本编程基础

shell编程基础变量:字符串,数字,环境和参数条件:shell中的布尔值程序控制:if,elif,for,while,until,case命令列表函数shell内置命令获取命令的执行结果 shell脚本是一个包含一系列命令的文本文件. 语法: #!/bin/sh 符号#!用来指定该脚本的解析程序. 修改脚本的属性: chmod +x file

2015-05-02 11:49:10 646

原创 STL案例代码

//1.指针迭代器#include #include using namespace std; #define SIZE 100int iarray[SIZE]; int main(){iarray[20] = 50;int* ip = find(iarray, iarray + SIZE, 50);if (ip == iarray + SIZE)/

2015-04-28 17:36:59 1040 2

原创 智能指针的那些事

C++不像Java,C#语言,它没有垃圾回收机制,但是它提供了强大而灵活的管理机制,使得开发人员自己避免内存泄露。可以通过new 获得内存或创建对象,一定使用delete来释放,这样就避免内存泄露。同时也可以将分配和使用用类封装,从而保证没有内存泄露。#include using namespace std; #include #include  class simpl

2015-04-17 09:19:12 836

原创 QT中 uic 工具的使用

使用QT设计师设计的窗口部件,用uic 工具可以转换成C++代码:(1)首先用QT设计师设计一个窗口,选择一个英文目录下,保存为gotocelldialog.ui我的文件保存在:F:\qt-program\gotocell(2)在该目录下创建一个 main.cpp 文件,内容如下:#include #include #include "ui_gotocelldialog

2015-03-30 15:44:04 13303

转载 Centos6.4下安装mysql数据库

转载地址:点击打开链接一、mysql简介说到数据库,我们大多想到的是关系型数据库,比如mysql、oracle、sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库,咱不得不首先推荐的是mysql数据库了,而且Mysql数据库的第一个版本就是发行在Linux系统上的。MySQL是一个关系型数据库管理系统,由瑞典MySQL

2015-03-28 23:51:34 637

原创 Error: Cannot find a valid baseurl for repo: base

我是安装没有图形界面的Centos Linux 系统上安装软件出现问题的,解决方法也很简单的,就是没有配置DNS。 解决方案:     (1)用VI打开:vi  /etc/resolv.conf      输入内容: nameserver 8.8.8.8      如果没有安装vi,可以直接使用重定向:              echo "nameserver 8.8.8

2015-03-27 15:15:35 584

原创 设计模式-------代理模式(ProxyPattern)

人物: 卓贾易   戴励  娇娇实现要求: 桌贾易心里喜欢娇娇, 戴励与娇娇关系好,桌贾易也和戴励关系好,所以,桌贾易让戴励代替自己给娇娇送礼物。第一版: 没有代理的代码

2015-03-18 09:08:25 487

原创 设计模式----装饰模式

装饰模式(Decorator Pattern):动态的给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活。实例: 显示一个人的穿衣第一版: 直接使用一个Person类来实现穿衣                                   第二版: 把人和服饰类分开了,穿衣的一些表现通过继承与服饰类     第三版: 使用装饰模式

2015-03-15 21:38:39 440

原创 设计模式----简单工程模式

简单工程模式:简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。 使用简单工程模式实现一个计算器类:源代码如下:// Operation.csusing System;using System.Collections.Generic;using System.Li

2015-03-15 20:46:53 1236

原创 vim的J简单配置

$ vim ~/.vimrcset   nu   # 设置行号set  autoindent   # 设置自动换行set ts=4     # 设置tab为4个空格长度systax on  # 进行语法检查,颜色显示保存后,退出,就可以了,以后就是这种设置了

2015-01-14 20:35:16 808

转载 fork()函数的基本使用

摘要:本文详解介绍fork()函数的基本使用,以及父子进程之间的关系.子进程对变量的改变不会影响到父进程、子进程对父进程文件流缓冲区的处理和子进程对父进程打开的文件描述符的处理.创建进程1.fork()函数函数定义:#include pid_t fork(void);返回值:如果返回值大于零,表明处于父进程上下文环境中,返回值是子进程的ID.如果返回值是零,表明处于子进程上

2015-01-11 22:11:21 1150

原创 4. Qt的容器类

Qt提供来一组通用的基于模板的容器类.一. QList类,QLinkedList类 和  QVector类        QList类、QLinkedList类和QVector类经常使用到的Qt容器类有QList、QLinkedList和QVector等。在开发一个较高性能需求的应用程序时,程序员会比较关注这些容器类的运行效率,下表列出了QList、QLinkedList和QVector容

2014-12-21 08:49:19 1350

原创 3.字符串类QString

一. QT功能模块       (1)QtCore: Qt的基本模块,所以其他模块都依赖次模块.       (2) QtGui: 定义来图形用户界面.       (3) QtNetWork:  定义来QT的网络编程类.       (4) QtQpenGL:  定义来QpenGL的支持类.       (5) QtSql:  定义来访问数据库的类.       (6)

2014-12-20 23:08:43 755

原创 QT中文字符显示乱码解决方案

只在main.cpp文件中加上如下几行代码:#include

2014-11-17 20:35:33 1325

原创 12.I/O超时设置方法

一.

2014-11-05 19:59:28 4566

原创 11.close和shutdown函数

一.

2014-11-04 21:28:44 797

一个程序员的奋斗史.txt

每个程序员必备小说,找了好久才找到TXT格式的,立即和大家分享分享

2014-09-01

QT教程大全.txt

QT超全视频教程资料,里面包含了国内有关QT的视频教程资料。

2014-08-28

编程狂人第三十九期.pdf

期待一周的编程狂人杂志终于更新了,二话不说,先和大家分享。

2014-08-26

C_C++编码规范.ppt

神州数码C/C++ 编码规范培训PPT,全面,详细的讲解C++的编码规范。常言道:“码品如人品”,提高人品,次文档值得下载。

2014-08-25

cc++ API 帮助文档

学习,开发C++或C的必不可少的帮助文档,方便查找,不用安装,window下直接运行。次文档包含了C++语言的常用函数,非常方便查找。值得下载。

2014-08-25

linux操作系统下c语言编程入门.pdf

一本基于linux 系统下最简单,最基本的教程书籍。特别适合初学者的学习

2014-08-24

深度探索C++对象模型.pdf

《深度探索C++对象模型》重点探索"对象导向程序所支持的C++对象模型"下的程序行为。对于"对象导向性质之基础实现技术"以及"各种性质背后的隐含利益交换"提供一个清楚的认识。检验由程序变形所带来的效率冲击。提供丰富的程序范例、图片,以及对象导向观念和底层对象模型之间的效率测量。专注于C++对象导向程序设计的底层机制,包括结构式语意、暂时性对象的生成、封装、继承,以及虚拟——虚拟函数和虚拟继承。

2014-08-24

C++必会必知.pdf

本书描述了C++ 编程和设计中必须掌握但通常被误解的主题,这些主题涉及的范围较广,包括指针操作、模板、泛型编程、异常处理、内存分配、设计模式等。

2014-08-24

Unix.Shell编程(第三版) .pdf

Unix.Shell编程, 专业,全面,使用 unix用户的空气和水

2014-08-22

68讲贯通C++.pdf

68讲贯通C++全面讲述C++知识,是一本不错的书

2014-08-21

QT经典-完美培训资料

QT经典-完美培训资料,经典,生动形象的讲解QT

2014-08-21

Linux程序设计第4版代码

Linux程序设计第4版代码该书的配套代码

2014-08-10

linux进程创建通信

linux进程创建_通信,该文件为PPT格式,写的比较好,讲述了进程的创建于及进程间的通信

2014-08-10

C Primer Plus 学习笔记

半个月的学习总结,通过对C Primer Plus 的学习,可以得到的体会。

2014-06-23

数据结构与算法分析(C语言描述)

数据结构与算法分析(C语言描述)

2014-06-18

数据库原理实验指导书

数据库原理实验指导书

2014-06-18

进程与线程的一个简单解释

进程与线程的一个简单解释.

2014-06-18

C++100例_经典、实用、趣味程序设计编程百例精解.doc

C++100例_经典、实用、趣味程序设计编程百例精解,可以提高编程能力,对于考计算机二级的同学也有一定的帮助。

2014-03-24

System V共享内存与信号量综合应用之生产者与消费者问题解决

用System V共享内存与信号量综合应用之生产者与消费者问题解决的相关代码,几乎每句代码都有注释,方便阅读.

2015-05-27

UNIX网络编程卷2进程间通信(第2版)

进程间通信(IPC)几乎是所有Unix程序性能的关键,理解IPC也是理解如何开发不同主机间网络应用程序的必要条件。本书从对Posix IPC和System V IPC的内部结构开始讨论,全面深入地介绍了4种IPC形式:消息传递(管道、FIFO、消息队列)、同步(互斥锁、条件变量、读写锁、文件与记录锁、信号量)、共享内存(匿名共享内存、具名共享内存)及远程过程调用(Solaris门、Sun RPC)。 第1部分 简介和TCP/IP? 第1章 简介 第2章 传输层:TCP、UDP和SCTP 第2部 分基本套接口编程? 第3章 套接口编程简介 第4章 基本TCP套接口编程 第5章 TCP客户/服务器程序例子? 第6章 I/O复用:select和poll函数 第7章 套接口选项 第8章 基本UDP套接口编程 第9章 基本SCTP套接口编程 第10章 SCTP客户/服务器程序例子 第11章 名字与地址转换 第3部分 高级套接口编程? 第12章 IPv4与IPv6的互操作性 第13章 守护进程和inetd超级服务器? 第14章 高级I/O函数 第15章 Unix域协议 第16章 非阻塞I/O 第17章 ioctl操作 第18章 路由套接口 第19章 密钥管理套接口? 第20章 广播 第21章 多播 第22章 高级UDP套接口编程 第23章 高级SCTP套接口编程 第24章 带外数据 第25章 信号驱动I/O 第26章 线程? 第27章 IP选项 第28章 原始套接口 第29章 数据链路访问 第30章 客户/服务器程序设计范式 第31章 流 第4部分 附录?

2015-05-23

Dev-Cpp 5.10 TDM-GCC 4.8.1 Setup.exe

非常不错C++编译器,值得珍藏,支持C++11标准,只需要简单的设置,如:编译选项:-std=c++11,就非常好的支持C++11标准了,还有其他设置方法。

2015-04-24

C++ Primer 课后习题答案

源文档下载链接:http://dwz.cn/cp5answer 此文档包含所有C++ Primer (第五版)编程题源代码。是英文版的,可以锻炼下自己的英文阅读能力。希望你喜欢。

2015-04-17

StarUML.zip

StarUML(简称SU),是一种创建UML类图,生成类图和其他类型的统一建模语言(UML)图表的工具。收藏为一个exe文件,直接安装就可以的

2015-03-15

基于51单片机的贪吃蛇程序.

基于proteus的仿真,12864显示,实现贪吃蛇的基本功能,可以作为单片机的课设的

2015-01-13

VC++6.0编译工具

使用了10多年的VC6,仍然是那么的经典,为了方便下载使用,上传至此,不需要破解,只需10s安装时间,方便快捷

2014-10-08

飞鸽传书源码

飞鸽传书源码

2014-10-01

10部算法经典著作的合集

10部算法经典著作的合集

2014-10-01

vc++游戏(源代码)

各类游戏源码下载!包含扫雷,贪吃蛇源码,推箱子源码,俄罗斯方块源码,拼图源码,连连看等经典游戏源码下载!

2014-10-01

Windows Phone 8高级编程技术课程网址

Windows Phone 8高级编程技术课程网址

2014-09-11

国嵌C++视频教程

国嵌C++视频教程

2014-09-11

shell编程.pdf

内容详细,重点突出,覆盖全面的知识点,值得学习

2014-09-09

GPS1602d的程序.c

一个GPS 简单程序,在1602上显示,还加入了串口的功能,

2014-09-07

GPS测试程序12864液晶(并行方式).zip

一个简单GPS模块,C51程序,注释详细,功能齐全。

2014-09-07

中国象棋程序.zip

可以直接运行的中国象棋程序,在window下用MFC开发的

2014-09-07

达内Unix_Linux 核心编程课件ppt.pdf

linux课程资源的精品课件,全面讲述linux高级环境编程。

2014-09-07

王爽汇编语言第二版(全部).ppt

汇编语言是各种CPU提供的机器指令的助记符的集合,人们可以用汇编语言直接控制硬件系统进行工作。汇编语言是很多相关课程(如数据结构、操作系统、微机原理等)的重要基础。为了更好地引导、帮助读者学习汇编语言,作者以循序渐进的思想精心创作了这本书。本书具有如下特点:采用了全新的结构对课程的内容进行组织,对知识进行最小化分割,为读者构造了循序渐进的学习线索;在深入本质的层面上对汇编语言进行讲解;对关键环节进行深入的剖析。 汇编 王爽 PPT

2014-09-07

空空如也

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

TA关注的人

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