自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 基于C++的web服务器---http连接篇(上)

废话不多说,我们直接进入主题。本次分为三个部分讲解,第一部分为知识准备部分,第二部分为epoll的处理部分,即如何将事件读入,第三部分是如何对报文进行处理的部分(该部分会与线程池连在一起,因此我们放在最后并引出线程池篇)。开始之前,我们依旧先把整个的http连接的流程先过一遍,这样可以先熟悉一下整个过程。一.具体连接流程首先,服务端开启监听,然后客户端发送请求,希望和服务端相连接,当服务器accept()之后,这个请求就被挂到了epoll监听队列上,当有读事件或者写事件发生时(这里可以简单的把读事件

2022-03-15 16:22:46 4793 3

原创 基于C++的web服务器---总述篇

一个web服务器的项目,这里把自己的理解写出来,同时也是想记录一下整个学习的过程。废话不多说,直接开始。什么是web服务器?就是通过HTTP协议与客户端(通常是浏览器(Browser))进行通信,来接收,存储,处理来自客户端的HTTP请求,并对其请求做出HTTP响应,返回给客户端其请求的内容(文件、网页等)或返回一个Error信息。用户如何与你的Web服务器进行通信?在浏览器中键入“域名”或“IP地址:端口号”,浏览器则先将你的域名解析成相应的IP地址或者直接根据你的IP地址向对应的Web服务器发

2022-03-14 18:25:03 8951

原创 用qt 写DDA ,Bresenham画线,中点圆和椭圆

计算机图形学课内实验用qt 写DDA ,Bresenham画线,中点圆和椭圆:mainwindow.h:#ifndef MAINWINDOW_H#define MAINWINDOW_H#include <QMainWindow>#include <QPushButton>#include <QTextEdit>#include <QLabel>namespace Ui {class MainWindow;}class MainWi

2020-12-31 23:48:11 1288

原创 九宫重排问题的实现

九宫重排问题的实现把1—8个数字按要求推动得出结果。如把把8 5 7 3 6 4 1 2推成1 2 3 4 5 6 7 8。就如同对于密码锁的破解,8个数字有着无穷个不同变幻的排列方式,游戏攻略如同玩滑动拼图,这里锻炼人的逆向思维能力,为进一步的九宫格游戏做准备。游戏中必须注意的是,以最少的移动次数拼出结果者为胜。本文采用【蓝桥杯】历届试题中的九宫重排问题来讲述此算法:我们把第一个图的局面记为:12345678.把第二个图的局面记为:123.46758显然是按从上到下,从左到右的顺序记录数字,空格

2020-12-31 23:42:52 1055

原创 主观Bayes算法的实现

主观Bayes算法的实现摘 要不确定性推理是指建立在不确定性知识和论据基础上的推理。首先,本文设计了基于主观Bayes方法的不确定性推理算法, 通过实验结果比较了结论不确定的合成算法与更新算法的一致性, 实现了不确定推理问题求解的自动化。关键词:不确定性推理 主观Bayes1 问题描述在证据不确定的情况下,以充分性量度LS、必要性量度LN、E 的先验概率P(E)和H的先验概率P(H)作为前提条件,分析P(H/S)和P(E/S)的关系。2 主观Bayes原理介绍主观Bayes方法又称主观

2020-12-31 23:37:47 3173 2

原创 操作系统实验时遇到的问题

操作系统实验时遇到的问题:Readme:头文件的问题,由于不足造成隐式声明不兼容的问题这里给出一般需要的头文件:#include <unistd.h>#include <sys/types.h>#include <sys/socket.h>#include <netdb.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#includ

2020-12-31 23:26:49 1147 1

原创 如何对string里的数字进行加减操作

参考以下代码:取shu[i]的值,可以是任意一个数字,然后对其进行减操作,注意是要减去一个ascll数。检验得到的结果是正确的。#include "stdafx.h"#include <string.h> void main(){ char shu[100]; scanf("%s",shu); int sum; sum=0; int len=strlen(shu); for(int i=0; i<len; i++) {

2020-12-14 19:12:52 4688

原创 break和continue的区别

1.break用break语句可以使流程跳出switch语句体,也可以用break语句在循环结构终止本层循环体,从而提前结束本层循环。使用说明:(1)只能在循环体内和switch语句体内使用break;(2)当break出现在循环体中的switch语句体内时,起作用只是跳出该switch语句体,并不能终止循环体的执行。若想强行终止循环体的执行,可以在循环体中,但并不在switch语句中设置break语句,满足某种条件则跳出本层循环体。2.continuecontinue语句的作用是跳过本次循环体

2020-10-18 19:31:10 295

原创 多个if语句和else if的区别

if无论是否满足条件都会向下执行,直到程序结束,else if 满足一个条件就会停止执行。由于if都会执行一遍,则可能会同一个需要判断的事件,会进入2个if语句中,出现错误,而else if就不会发生这样的事情。多个if是:所有的if都会进行判断if else: if是只要有满足条件的,就不再对之后的else if进行判断比如a = 2;if(a==1) c=1;if(a==2) c=2;if(a%2==0) c=3;最终结果c=3a=2;if(a==1) c=1;else if(a

2020-10-18 19:06:06 2047

原创 免费个人博客搭建

创建Github 域名和空间第一步:打开官网:https://github.com 注册一个帐户。注意username,这会影响到你的域名,你的域名将会是 username.github.io 。第二步:创建仓库 填写仓库的名字和描述需要创建一个仓库(repository) 来存储我们的网站,点击首页任意位置出现的 New repository按钮创建仓库, Respository name 中的username.github.io 的username 一定与前面的Owner 一致,记住你的user.

2020-10-17 20:52:57 432

原创 使用Halo建立自己的私人博客

用Halo建立自己的私人博客第一步配置 Java 环境,这个教程应该能帮助你:链接: https://www.runoob.com/java/java-environment-setup.html.我是在windows中配的,前面jdk不用多说,按步骤来就完事儿了,最主要的是后面环境配置,一定要注意path是添加的两个。第二步下载 Halo 运行包:Github releases:lhttps://github.com/halo-dev/halo/releases.点进去直接下载下来就行。

2020-10-17 20:44:03 384

原创 简单二叉树的模型和解法(C++)

几类简单树的模型和解法(C++)这几类都需要采用递归的思想来进行计算。相同的树例题:给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。解题思路:拿到这道题之后,我们可以把问题转变为:把每个节点的值依次比较,如果相同,则认为相等。因此显然是一个递归的问题。这里先给出代码: bool isSameTree(TreeNode* p, TreeNode* q) { if(p==NULL&&q==NULL

2020-10-15 21:53:15 868

空空如也

空空如也

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

TA关注的人

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