自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Mango_April的博客

只有往前走的选择!

  • 博客(46)
  • 资源 (1)
  • 收藏
  • 关注

原创 json记录

#include  #include  #include  #include  #include  #include  #include #include "cJSON.h" //#include "cJSON_Utils.h"#pragma comment(lib, "cjson.lib")#define DEFAULT

2017-03-16 11:57:16 444

原创 服务端connect

#include  #include  #include  #include  #include  #include  #include  #define DEFAULT_PORT 10000  #define MAXLINE 4096 //通信协议数组char tcp_flag[4069];char cmd_type[5];char d

2017-03-13 20:18:35 368

原创 lalallala

#include  #include  #include  #include  #include  #include  #include  #define DEFAULT_PORT 8000  #define MAXLINE 4096 char* itoa(int num,char*str,int radix){/*索引表*/

2017-03-09 19:06:07 322

转载 socket数据协议包

链接点击打开链接

2017-03-02 17:50:08 1196

转载 socket 聊天室

提供链接这是socket下的多功能聊天室

2017-03-02 16:48:14 315

转载 AT&T

【 声明:版权所有,欢迎转载,请勿用于商业用途。  联系信箱:feixiaoxing @163.com】    同样是x86的cpu,但是却可以用不同形式的汇编语言来表示。在window上面我们使用的更多是intel格式的汇编语言,而在Linux系统上面使用的更多的常常是AT&T格式的汇编语言。那什么是AT&T格式的汇编代码呢?我们可以写一个试试看。[cpp] 

2017-02-27 14:54:29 189

转载 gdb调试

版权声明:本文为博主原创文章,未经博主允许不得转载。【 声明:版权所有,欢迎转载,请勿用于商业用途。  联系信箱:feixiaoxing @163.com】    编写代码过程中少不了调试。在windows下面,我们有visual studio工具。在Linux下面呢,实际上除了gdb工具之外,你没有别的选择。那么,怎么用gdb进行调试呢?我们可以一步一步来试试看。

2017-02-27 14:47:53 144

转载 makefile的简单编写

对于程序设计员来说,makefile是我们绕不过去的一个坎。可能对于习惯Visual C++的用户来说,是否会编写makefile无所谓。毕竟工具本身已经帮我们做好了全部的编译流程。但是在Linux上面,一切变得不一样了,没有人会为你做这一切。编代码要靠你,测试要靠你,最后自动化编译设计也要靠你自己。想想看,如果你下载了一个开源软件,却因为自动化编译失败,那将会在很大程度上打击你学习代码的自信心了

2017-02-27 14:27:47 235

转载 linux开篇

在很多人的眼里,C语言和linux常常是分不开的。这其中的原因很多,其中最重要的一部分我认为是linux本身就是C语言的杰出作品。当然,linux操作系统本身对C语言的支持也是相当到位的。作为一个真正的程序员来说,如果没有在linux下面用C语言编写过完整的程序,那么只能说他对C语言本身的理解还相关肤浅,对系统本身的认识也不够到位。作为程序员来说,linux系统为我们提供了很多理想的环境,这其中包

2017-02-27 13:53:07 158

原创 从尾到头打印链表

题目描述输入一个链表,从尾到头打印链表每个节点的值。 输入描述: 输入为链表的表头输出描述: 输出为需要打印的“新链表”的表头 struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) {

2016-10-09 19:25:29 176

原创 指针(2)

今天又接着来了解指针~~~ 注:本篇内容只为复习笔记 指针和const之间有什么交互呢?1、指向const对象的指针在这里我们需要知道的是,const值是不可以修改的。 所以,如果某个指针指向const对象,则不允许用指针来改变const值。 举个栗子: const double *ptr; //ptr指针可能指向一个类型为double的常量值 上面的栗子中,ptr指针本身并不是con

2016-10-07 21:08:07 171

转载 从输入URL到页面加载发生了什么

原文地址:从输入URL到页面加载发生了什么最近在进行笔试时,发现有一个问题始终绕不开,关于计算机网络的: 在浏览器中输入URL到整个页面显示在用户面前时这个过程中到底发生了什么。幸好在上面看到这篇,真的很全很形象,方便自己记忆,转给大家一起分享。总体来说分为以下几个过程:DNS解析TCP连接发送HTTP请求服务器处理请求并返回HTTP报文

2016-10-07 15:01:31 430

转载 内存对齐

对齐原因 大部分的参考资料都是如是说的: 1、平台原因(移植原因):不是所有的硬件平台都能访问任意地址上的任意数据的;某些硬件平台只能在某些地址处取某些特定类型的数据,否则抛出硬件异常。 2、性能原因:数据结构(尤其是栈)应该尽可能地在自然边界上对齐。原因在于,为了访问未对齐的内存,处理器需要作两次内存访问;而对齐的内存访问仅需要一次访问。 对齐规则 每个特定平台上的编译器都有自己的默认“

2016-10-04 10:37:01 156

原创 sizeof和strlen

一、sizeof和strlen的相同点:二者都是用来统计字符串所占用的大小的。 二、区别: 1、strlen是函数,而sizeof是运算符; 2、strlen必须以char *作为参数,且必须以’\0’结尾;而sizeof()可以用于其他类型; 3、strlen统计字符串中字符的长度,不包括结尾的’\0’; 4、数组做sizeof的参数不退化,而传递给strlen就变为指针 举个栗子:

2016-10-04 09:49:58 300

转载 STL模板

标准模板库就是类与函数模板的大集合。STL共有6种组件:容器,容器适配器,迭代器,算法,函数对象和函数适配器。1、容器:容器是用来存储和组织其他对象的对象。STL容器类的模板在标准头文件中定义。主要如下所示①序列容器基本的序列容器是上面图中的前三类:关于三者的优缺点主要是:A:vectorT>矢量容器:可以随机访问容器的内容,在序列末尾添加或删除对象,但是因为是从尾部删除,过程非常

2016-10-04 09:36:34 506

原创 替换空格

题目描述请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。解题分析替换字符串中的空格,一、我们可以重头开始往后遍历,遇到空格就用%20替换,考虑到这样的话需要移动的元素很多,每替换一个空格,他后面的所有元素都要移动,时间复杂度太高。二、从后往前替换空格,那么只需要移动空格后面的字符串就行了,这样大

2016-10-02 20:34:39 269

原创 二维有序数组查找给定值

题目描述在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。解题思路次数组为有序数组,所以我们可以有两个入口点:(1)左下角【左下角的元素规律是往上走是递减,往右走是递增】(2)右上角【右上角的元素规律是往左依次递减,往下递增】。那么我们可以依据这两个切入点对元素进行比较。本题从左下角入

2016-10-02 20:08:05 357

原创 指针(1)

今天做笔试题的时候~又被指针给虐了一遍,想想之前对指针似懂非懂,然而并没有动手去敲过,总感觉自己懂了~?导致这几次被虐的很惨很惨~今天重拾归纳一下: *首先我们得知道指针是用来控制对象的内存地址。 1、笔试题中,会经常碰到这样的题目:向你10岁大的侄子解释一下什么是指针? 指针就是用来存储内存地址的变量,它指向单个对象的地址。 PS:C++里面提供了void * 类型的指针类型,万能指针,可

2016-09-28 23:01:29 173

转载 csrf

1.XSS 全称“跨站脚本”,是注入攻击的一种。其特点是不对服务器端造成任何伤害,而是通过一些正常的站内交互途径,例如发布评论,提交含有JavaScript 的内容文本。这时服务器端如果没有过滤或转义掉这些脚本,作为内容发布到了页面上,其他用户访问这个页面的时候就会运行这些脚本。 2. CSRF 的全称是“跨站请求伪造”,是伪造请求,冒充用户在站内的正常操作。 3.过滤用户输入,不允许发布这种

2016-09-20 10:46:07 225

转载 三次握手,四次挥手

http连接分为:建立连接,即tcp三次握手                    发送请求信息                    发送响应信息                    关闭连接(tcp四次握手);下面讲此过程: 在TCP断开的过程中会有四个状态变化过程,如下图所示: 在连接撤销过程中,有如下过程: 1.HOST1上的应用程序关闭己方的连接导

2016-09-20 10:19:05 156

原创 计算机网络复习——概述

1、计算机网络(简称网络)其实就是把许多计算机连接在一起。 2、互联网则是把许多网络连接在一起。 五层,TCP/IP分层,OSI分层

2016-09-17 14:59:49 308

转载 IP地址分类

A类地址:以0开头, 第一个字节范围:0~126(1.0.0.0 - 126.255.255.255); B类地址:以10开头, 第一个字节范围:128~191(128.0.0.0 - 191.255.255.255); C类地址:以110开头, 第一个字节范围:192~223(192.0.0.0 - 223.255.255.255); 10.0.0.0—10.255.255.255, 172

2016-09-16 23:46:22 312

转载 OSI,TCP/IP,五层协议的体系结构,以及各层协议

一、OSI分层(7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。 二、TCP/IP分层(4层):网络接口层、网际层、运输层、应用层。 三、五层协议(5层):物理层、数据链路层、网络层、运输层、应用层。 每一层协议如下: 物理层:RJ45、CLOCK、IEEE802.3 (中继器,集线器) 数据链路:PPP、FR、HDLC、VLAN、MAC (网桥,交换机) 网络层:I

2016-09-16 23:15:38 6585 1

原创 进程管理(二)进程

1、进程的概念 据1978年庐山会议国内学者提出的比较全面的定义: 进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动,它是系统进行资源分配和调度的一个独立单位。 2、进程的特性 (1)动态性 进程是一个动态的概念,它是有生命周期的,依靠拥有处理机而得到运行。它是程序的运行活动。由创建而生,撤销而亡。 (2)并发性 任何进程都可以和其他进程一起向前推进 (3)独立性 进

2016-09-09 16:46:20 183

原创 进程管理(一)程序

1、并行与并发(1)并行 :同一时刻,两个事物均处于活动状态(2)并发 :宏观上存在并行特征,微观上存在顺序性。同一时刻,只有一个事物处于活动状态。2、程序并行执行的特性并发性失去封闭性和可再现性程序与计算不再一一对应相互制约性由于程序的静态型,无法描述执行过程中的动态特征所以下面,我们来看一下进程

2016-09-09 16:04:58 176

转载 操作系统必懂小知识

1、什么是进程(Process)和线程(Thread)?有何区别?  进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的

2016-09-03 10:52:39 420

转载 多线程的同步

1、如何实现多线程的同步 【答案】 线程的同步可以使用临界区、互斥量和信号量等方式实现。 【分析】 (1)多线程的应用 多线程是为了使得多个线程并行的工作以完成多项任务,以提高系统的效率。使用多线程带来的好处有: a、可以把占据长时间的程序中的任务作为一个单独的线程放到后台去处理。而用户界面可以继续响应用户的操作。例如用户单击了一个按钮去触发某些事件的处理,可以弹出一个进度条来显示处理

2016-09-02 15:30:11 238

转载 进程与线程(1)

1、操作系统的进程与线程的概念、区别、关系 进程与线程是操作系统任务调度时的单位。应用程序都是运行在进程或者线程中。通过使用进程或线程,应用程序可以实现并发控制等功能。 【归纳】 操作系统最小的调度单位是线程 资源最小的单位是进程 【分析】 (1)操作系统的调度概念 操作系统中同时运行着的多个应用程序在有限的CPU资源中如何高效运行,并为其分配系统资源包括硬件资源和软件资源等,这就是操

2016-09-02 11:36:26 265

转载 操作系统概论(2)

2、常用的操作系统有哪些 【答案】 Unix、Linux、DOS、Windows、Mac等 【分析】 1、操作系统的分类 操作系统根据任务的处理方式可以分为简单批处理系统、多道程序批处理系统、多道程序分时系统、网络操作系统。 (1)简单批处理系统:用户一次可以提交多个作业,但系统一次只处理一个作业,处理完一个作业后,再调入下一个作业进行处理。这些调度,切换系统自动完成。 (2)多道程序

2016-09-02 09:31:00 200

转载 操作系统概述(1)

1、什么是操作系统? 【答案】 操作系统(OS),用于管理计算机系统的硬件资源,软件资源及数据资源,控制程序运行,提供操作接口,为其他应用软件提供支持等的软件系统。 【分析】 1、操作系统的概念 操作系统(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。 操作

2016-09-02 09:03:15 237

转载 SQL语言(2)之分页查询

2、使用SQL语句对表进行分页查询 【答案】 使用SQL语句对表进行分页查询,可以有以下实现,对一个表,需要获取第n页的数据,每页的大小为m时,其实现如下: select * from( select top(m)*from( select top(m*n)* from users order by id )t1 order by id desc)

2016-09-01 11:44:11 221

转载 SQL语言(1)

1、什么是SQL语言 (1)SQL语言概念 SQL(Structured Query Language)是一种介于关系代数与关系演算之间的结构化查询语言,已经成为关系数据库的标准语言。(2)SQL语言功能介绍 SQL语言的功能,实现了数据定义、数据操纵和数据控制功能。 结构化查询语言包含6个部分: 一:数据查询语言(DQL:Data Query Language): 其语句,也称为“数据

2016-09-01 10:51:17 275

转载 数据库理论(4)之数据库管理系统

4、什么是数据库管理系统 【答案】 数据库管理系统是提供建立、维护、管理和控制数据功能的一组计算机软件。 【分析】 1、数据库管理系统的概念 数据库管理系统是提供建立、管理、维护和控制数据库功能的一组计算机软件。数据库管理系统的目标是用户能够更好的组织和存储数据,能够高效地从数据库中获取数据,处理数据。2、数据库管理系统的功能 (1)数据定义功能:数据库管理系统提供数据定义语言(DDL)

2016-09-01 10:36:27 879

转载 数据库理论(3)之数据模型

3、有哪几种数据模型 【答案】 根据数据结构的不同,常见的数据模型有层次模型、网状模型和关系模型。 【分析】 1、数据模型的概念 数据模型是一组概念的组合,这些概念包括数据结构、数据操作和完整性约束条件。这称之为数据模型的三要素。 a、数据结构:指数据模型中数据对象的存储形式; b、数据操作:指数据库中允许对数据执行的操作集合; c、完整性约束条件:指一组数据完整性规则的集合,用于保

2016-09-01 10:05:09 412

转载 数据库理论(2)之数据库事务

一、什么是数据库事务 【分析】 1、事务的概念

2016-08-31 16:45:51 222

转载 数据库理论(1)之关系数据库设计范式

在我重新拾起数据库的知识之前,我觉得我必须知道,什么是数据库。 数据库的定义是这样:数据库,简称DB(Database),是一个按照数据结构来存储和管理数据的软件系统。 那么,对数据库进行管理的软件系统称为数据库管理系统,即DBMS。下面,就一些例子,来学习数据库理论。1、什么是关系数据库设计范式 【答案】 数据库的设计范式有6种,1NF、2NF、3NF、4NF、5NF、BCNF. 【分析

2016-08-31 16:32:36 715 1

原创 牛客题解(1)

1、 SQL语句性能分析的关键字是什么? 答案:explain。 解析:explain命令是在解决数据库性能上是第一推荐的使用命令,大部分的性能问题可以通过此命令来简单解决,explain的执行效果可以帮助选择更好的索引和优化查询语句。explain语法:explain select … from … [where …] 例如:explain select * from news;2、数据库系统

2016-08-31 10:47:22 438

转载 数据库三级模式(1)

1、数据抽象: 根据抽象级别定义的四种模型以及它们之间的关系。 2、数据库的三级模式结构:模式:也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。注意: ① 一个数据库只有一个模式; ② 是数据库数据在逻辑级上的视图; ③ 数据库模式以某一种数据模型为基础; ④ 定义模式时不仅要定义数据的逻辑结构(如数据记录由哪些数据项构成,数据项的名字、类型、取值范

2016-08-30 16:49:26 533

转载 MySQL

这篇博文大概分为这几个部分: 一、MySQL的基础操作 二、MySQL的加速和优化 三、MySQL笔试面试题一、MySQL的基础操作1、进入mysql。 通常进入到mysql里面有两种方法,第一种是直接打开mysql的执行文件,第二种是在DOS命令下,采用“cd ……mysql\bin”命令切换到mysql\bin目录下,然后键入命令进入到MySQL中,格式如下: mysql -h主机

2016-08-29 16:15:25 346

原创 使用Base64格式的图片制作ICON

优势: - Base64 图片可以减少请求 - 加快首屏数据的显示速度 1、一般我们通常使用background : url……这种形式加载图片,url里面写的是图片地址 2、使用base64格式就只需要填写一串字符串,承载着图片信息,相当于我们提前把图片信息放到了css文件中,减少了请求。 background:url(data:image/png;base64,{imag

2016-08-28 20:34:01 2476

Mahout算法详解

这是大数据相关的算法详解,这是大数据相关的算法详解,

2018-06-24

空空如也

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

TA关注的人

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