- 博客(20)
- 资源 (6)
- 收藏
- 关注
转载 C++异常处理机制
1.C语言对于错误的处理 首先举一个例子#include <iostream> #include <setjmp.h> jmp_buf static_buf; //用来存放处理器上下文,用于跳转 void do_jmp() { //do something,simetime occurs a little error //调用longjmp...
2018-03-29 20:13:32 248
转载 内存泄露及其检测
1.内存泄漏的定义 一般我们常说的内存泄漏是指堆内存的泄漏。堆内存是指程序从堆中分配的,大小任意的(内存块的大小可以在程序运行期决定),使用完后必须显示释放的内存。应用程序一般使用malloc,realloc,new等函数从堆中分配到一块内存,使用完后,程序必须负责相应的调用free或delete释放该内存块,否则,这块内存就不能被再次使用,我们就说这块内存泄漏了。示例一:以下这段小程序演示...
2018-03-29 18:22:21 188
原创 打砖块
1.介绍消除所有的方块即可过关。操作指南:游戏中使用键盘方向键←→控制移动。首先构建双缓冲框架小球和砖块、客户区边界发生碰撞后改变运动方向。设置游戏关卡并绘制砖块分布。鼠标移动控制托盘。托盘没有接住小球生命值则减一。游戏结束时显示对话框以便继续或退出游戏。分为小球类,挡板类和砖块类。2.程序CBack.h#pragma once#include"allSys.h"class CBack{...
2018-03-29 15:57:08 1114
原创 C/C++分别实现画图软件
1.C语言版#include <graphics.h>#include <stdlib.h>#include <conio.h>#include <stdio.h>#include <dos.h>#include <bios.h>#include <math.h>#include <al
2018-03-29 15:26:53 21087 3
原创 飞机大战
1.介绍 先启动程序,在MFC下进行初始化操作,把相关的游戏对象初始化例如战机、敌机、背景、子弹和炸弹等,同时初始化绘图环境如内存DC、设备DC、位图等。然后不断的绘制游戏对象,运用算法实现游戏规则。2.程序CFoePlane.h#pragma once#include"公共.h"#include"PlayerPlane.h"#include"Gunner.h"class CFoeP...
2018-03-29 14:51:28 355
原创 基于MFC的纸牌游戏
1.介绍基类CCObject有两个派生类:一个是CCardsRank类,实现牌组的相关链表操作,并按规则显示纸牌;另一个是CRule类,类中运用算法实现接受纸牌和发送纸牌的规则,同时更新坐标。CAAAACardRank类、CAAAARule类分别继承CCardsRank类、CRule类实现细化的功能。2.程序CAAAACardRank.h#pragma once#include "cardsra...
2018-03-29 14:40:38 1853
原创 Linux下音乐播放器的实现
1.项目描述:实现了播放器的页面,并读取出文件中的歌曲名把歌曲列表显示在右侧。可以通过触 摸屏幕上的按钮实现暂停和继续播放、静音和解除静音、调节音量大小、快进和快退、点击进度 条更改歌曲播放进度、点击歌曲名切换歌曲的功能。在歌词随歌曲的播放而同步显示时,页面中 还会展现歌曲名、演唱者、歌曲总长度、歌曲当前播放时间和歌曲进度百分比。 2.项目流程:使用Glade实现了音乐播放器的页面,然后创建无名管...
2018-03-29 14:22:35 15966 3
原创 HTTP协议
前言超级详细的HTTP详解CGI详解1.HTTP介绍HTTP是一个简单的协议。客户进程建立一条同服务器进程的TCP连接,然后发出请求并读取服务器进程的响应。服务器进程关闭连接表示本次响应结束。服务器进程返回的文件通常含有指向其他服务器上文件的指针(超文本链接)。用户显然可以很轻松地沿着这些链接从一个服务器到下一个服务器。HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型。HT...
2018-03-28 20:01:28 311
原创 基于MFC实现的网络教室
1.项目名称:Windows 下的网络教室 2.项目目的:实现同一局域网下服务器和客户端的通信。3.项目描述:基于 MFC 实现了页面的布局。设置服务器实现教师与学生的通讯,用客户端模拟教 师和学生两种角色,并实现注册和登录的功能。教师端按下开始抢答后,学生端可以抢答。学生端可以进行举手、提交作业的操作,并且学生端的界面可以显示答题信息和在线好友列表。4.项目要点:1.使用中介者模式 观察者模式,...
2018-03-28 11:49:40 711
原创 DLNA音视频推送
1.项目简介:本次项目要求实现的是将手机或者其他手持终端上的存储音视频等多媒体文件通过无线网络推送至linux主机,并在linux实现播放的功能。同时,在播放的基础上,实现了手机端能够控制主机端媒体的暂停、快进、调节音量的等功能。在完成项目的过程当中,应用了DLNA(数字生活网络联盟)工程的解决方案完成了整个程序的架构,使用了upnp协议(通用即插即用)以及socket接口完成网络数据的传输,所以...
2018-03-28 10:52:46 6178 2
原创 Linux下网络传输(模拟路由器)
1.项目目的:实现开发板和计算机之间的通信。2.项目描述:路由器项目可以获取通信双方的MAC地址,通过修改ICMP包来实现数据的转发,从而实现不同网段的通信。除此之外,还可以通过过滤ARP缓存表来实现防火墙的功能,并可以实时打印网卡信息和ARP缓存表。在程序运行过程中路由器可以Ping开发板或者主机来检查线路。3.所用技术:使用原始套接字Socket抓取链路层数据包。通过文件IO的库函数,用链表的...
2018-03-28 10:45:04 841
原创 Windows下异步IO模型详解
1.选择模型1.1选择模型介绍选择(select)模型是Winsock中最常见的 I/O模型。核心便是利用 select 函数,实现对 I/O的管理。利用 select 函数来判断某Socket上是否有数据可读,或者能否向一个套接字写入数据,防止程序在Socket处于阻塞模式中时。在一次 I/O 调用(如send或recv、accept等)过程中,被迫进入“锁定”状态。可以同时等待多个套接字,当某...
2018-03-27 17:38:15 3245
原创 线程池的原理及其在Windows/Linux下的实现
1.为什么需要线程池 目前的大多数网络服务器,包括Web服务器、Email服务器以及数据库服务器等都具有一个共同点,就是单位时间内必须处理数目巨大的连接请求,但处理时间却相对较短。 传统多线程方案中我们采用的服务器模型则是一旦接受到请求之后,即创建一个新的线程,由该线程执行任务。任务执行完毕后,线程退出,这就是是“即时创建,即时销毁”的策略。尽管与创建进程相比,创建线程的时间已经大大的缩短,但是如...
2018-03-27 14:59:19 343
原创 基于QT的摄像头调用
QCamera:系统摄像设备(摄像头)QCameraViewfinder:摄像取景器部件QCameraImageCapture:截图部件widget.h#ifndef WIDGET_H#define WIDGET_H#include <QWidget>#include <QCamera>#include <QCameraViewfinder>#inc...
2018-03-27 14:44:55 20270 16
原创 基于Linux的TFTP
TFTP概述1.TFTP:简单文件传送协议2.最初用于引导无盘系统,被设计用来传输小文件3.特点:基于UDP协议实现不进行用户有效性认证4.数据传输模式:octet:二进制模式netascii:文本模式 mail:已经不再支持5.TFTP通信过程总结服务器在69号端口等待客户端的请求服务器若批准此请求,则使用临时端口与客户端进行通信每个数据包的编号都有变化(从1开始)每个数据包都要得到ACK的确认...
2018-03-27 14:36:34 256
原创 基于Linux的飞鸽欺骗
1.IP信使传输协议(第9版草案) 1996/02/212003/01/14 H.Shirouzu 2.关于IP信使: IP信使使用TCP/UDP协议提供收发消息及文件(目录)。 3.特性: IP信使能够安装在任何一个安装了TCP/IP协议栈的操作系统上,使用在线用户的动态识别机制,可以和在线所有用户进行信息交换。 4.运行机制介绍: 使用TCP/UDP端口(默认端口为2425),...
2018-03-27 14:23:02 536
转载 SQL语句_练习题
问题及描述: --1.学生表 Student(S#,Sname,Sage,Ssex) --S# 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别 --2.课程表 Course(C#,Cname,T#) --C# --课程编号,Cname 课程名称,T# 教师编号 --3.教师表 Teacher(T#,Tname) --T# 教师编号,Tname 教...
2018-03-27 14:12:48 376
原创 歌词解析
项目步骤:打开歌曲文件(rb方式)测文件大小申请空间,读入文件内容。用strtok 以"\r\n"(2进制文件行尾是以"\r\n"结)切割字符串,用指针数组去指向切出来的字符串。处理前四行处理后面的带时间的行,创建链表。创建模拟时钟,搜索链表中的结点,找到了打印歌词。注意事项:1、本程序完成功能:完成lrc格式歌词的文件读取、解析、链表创建等,同时在屏幕上将解析出的歌词进行实时显示。2、延时函数需...
2018-03-27 14:07:04 2804
原创 游戏修改器
0804itask.h#pragma once#ifndef __AFXWIN_H__ #error "在包含此文件之前包含“stdafx.h”以生成 PCH 文件"#endif#include "resource.h" // 主符号0804itask.cpp #include "stdafx.h"#include "0804itask.h"#include "0804ita...
2018-03-27 13:59:02 1766
原创 IO多路复用
1.概述select,poll,epoll都是IO多路复用的机制。I/O多路复用就是通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。但select,poll,epoll本质上都是同步I/O,因为他们都需要在读写事件就绪后自己负责进行读写,也就是说这个读写过程是阻塞的,而异步I/O则无需自己负责进行读写,异步I/O的实现会负责把数据...
2018-03-27 13:07:54 235
Linux下的软路由
2017-11-01
MFC截屏工具
2017-11-01
图片预览器
2017-11-01
DLNA音视频推送
2017-11-01
校招面试中常见问题-软件开发
2017-10-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人