- 博客(36)
- 资源 (6)
- 收藏
- 关注

原创 tightvnc2.8.5 vs2010编译和 VS2010中编译openssl的步骤和使用设置
tightvnc2.8.5 vs2010编译1、编译环境源码链接:http://www.tightvnc.com/download.php库文件依赖:WindowsKits 下载地址:https://developer.microsoft.com/en-us/windows/downloads/windows-8-sdkVs2010下载地址: https://pan.bai
2016-10-26 10:24:35
904
原创 Web安全
1、HTTP定义了与服务器交互的不同方法,最基本的方法是GET和POST。GET方式在客户端通过URL提交数据,数据在URL中可以看到,例如:http://www.cnblogs.com/javanme/index.html?servId=2。POST方式,数据防止在HTMLHEADER内提交,数据在URL中看不到。GET只能传输较少的数据,安全性较低,POST传输数据较多,安全性也比GET高。
2017-10-14 16:31:30
339
原创 判断文件是否存在,不存在则新建
#include<iostream>#include<string.h>#include<stdlib.h>#include<sstream>#include<io.h>#include<stdio.h>using namespace std;int main(){ string name; //输入要创建的文件名 cin >> name; while(
2017-09-26 18:24:07
1379
原创 c/c++:内存泄露和野指针的概念
内存泄漏 用动态存储分配函数动态开辟的空间,在使用完毕后未释放,结果导致一直占据该内存单元,不能被任何程序再次使用,直到程序结束。即所谓内存泄漏。 注意:内存泄漏是指堆内存的泄漏。 简单的说就是申请了一块内存空间,使用完毕后没有释放掉。它的一般表现方式是程序运行时间越长,占用内存越多,最终用尽全部内存,整个系统崩溃。由程序申请的一块内存,且没有任何一个指针指向它,那么这块内存就泄露了
2017-09-21 16:23:04
674
原创 Docker安装
1、docker安装 1)Docker软件包和依赖包安装 yum -y install docker 2)启动docker后台服务 service docker start 3)测试运行hello-world docker run hello-world 2、Docker使用 1)docker运行 docker run -it ubuntu:15.10 /bin/bash 说明:
2017-08-22 22:40:25
379
原创 输出前m大个数,时间复杂度O(n+mlog(m))
#include<iostream>using namespace std;void swapM(int &a, int &b){ int tmp = a; a = b; b = tmp;}//用治处理 O(n+mlog(m))//用O(n)把m大个数挪到右边,然后对这m个数排序再输出void QuickSort(int a[], int s, int e){
2017-08-13 15:36:31
2225
原创 寻找多元素
多元素定义:多元素即在数列中出现次数多于n/2的元素,即超过50% 性质:在一个序列中如果去掉2个不同的元素,那么原序列中的多元素,在新的序列中还是多元素,#include<stdio.h>#include<stdlib.h>int main(){ int a[] = {3,1,1,2,3,1,3,3,3}; int i; //初始化 int count = 1
2017-07-30 10:50:49
313
原创 Linux SSL
gcc -o ssl_server server.c -Wall -g -lssl -lcrypto http://www.linuxidc.com/Linux/2011-04/34523.htm 服务端#include <stdio.h>#include <stdlib.h>#include <errno.h>#include <string.h>#include <sys/types
2017-07-27 21:32:47
890
转载 Linux简单命令
命令提示符[root@localhost ~]# root:当前登录用户 localhost:主机名 ~:当前所在的目录,此处为“家”目录 #:root超级用户的提示符,如果是普通用户,则为 $命令格式命令 [选项] [参数] 中括号 [] 表示可选查询目录中的内容:lsls [选项] [文件或目录] 选项:-a : 显示所有文件,包括隐藏文件 -l : 显示详细信息 -d : 查看
2017-05-22 19:08:21
247
转载 C++正则表达式
C++里面使用正则表达式一般有三种:C regex,C++regex, boostregex , pcreCregex 的速度是最快的 C++regex 速度一般 boostregex 速度最慢,但是用起来最方便特殊需求表达式1Email地址:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$2域名:[a-zA-Z0-9][-a-zA
2017-03-06 15:28:39
574
转载 数据库检索学习
1、ORDER BY子句位于SELECT语句的末尾,它允许指定按照一个列或者多个列进行排序,还可以指定排序方式是升序(从小到大排列,ASC)还是降序(从大到小排列,DESC) 2、按照年龄升序排序所有员工信息的列表:SELECT * FROM T_Employees ORDER BY Age ASC 3、按照年龄从大到小排序,如果年龄相同则按照工资
2017-02-23 14:23:55
722
转载 MYSQL常用数据类型
文本:CHAR(*):最多255个字节的定长字符串,它的长度必须在创建时指定VARCHAR(*):最多255个字节的可变长度字符串,它的长度必须在创建时指定TEXT:最大长度为64K字符的变长文本TINYTEXT:最大长度为255字符的变长文本MEDUIMTEXT:最大长度为16K字符的变长文本LONGTEXT:最大长度为4GB字符的变长文本
2017-02-23 10:17:58
379
转载 浅谈 C++ 中的 new/delete 和 new[]/delete[]
在 C++ 中,你也许经常使用 new 和 delete 来动态申请和释放内存,但你可曾想过以下问题呢?new 和 delete 是函数吗?new [] 和 delete [] 又是什么?什么时候用它们?你知道 operator new 和 operator delete 吗?为什么 new [] 出来的数组有时可以用 delete 释放有时又不行?…如果你对这些问题都有疑问的话,
2017-01-12 20:08:07
230
原创 C++语言实现二叉树的非递归遍历
#include#includeusing namespace std;typedef struct BiTNode{int data;BiTNode *lchild,*rchild;}BiTNode;BiTNode* goLeft(BiTNode* T,stack &s){if(T == NULL){ return NULL;
2017-01-11 20:52:07
461
原创 自定义log日志输出到文件中保存
//log.h#pragma once/* #define IC_NO_LOG_LEVEL 0 #define IC_DEBUG_LEVEL 1 #define IC_INFO_LEVEL 2 #define IC_WARNING_LEVEL 3 #define IC_ERROR_LEVEL 4*//
2016-12-29 14:35:17
3007
1
原创 C++ 重写重载重定义区别
C++重写重载重定义区别1 Overload: 是函数名相同,参数列表不同.重载只是在类的内部存在。但是不能靠返回类型来判断。成员函数重载特征: a 相同的范围(在同一个类中) b 函数名字相同 c 参数类型、个数不同 d virtual关键字可有可无2 Override:也叫做覆盖。重写(覆盖)是指派生类函数覆盖基类函数。子类重新定义了父类中有相同
2016-12-27 18:44:04
317
转载 C++ 字符串使用详解
当我们一开始使用C语言来处理字符串的时候,会感觉非常的麻烦。C语言中缺少相应的字符串处理函数,如果想要实现某个字符串功能,只能靠我们自己来实现。但是当来到C++中,字符串的处理就会变得异常简单。今天我们就来学习一下C++中最高频的字符串处理函数。首先要引入C++中的字符串头文件:#include 请注意,这里的头文件是没有.h的,否则就成了C语言中的头文件了。(1)创建
2016-12-20 20:53:02
334
原创 const引用与非const引用
const引用只读不可修改,与绑定对象是否为const无关。非const引用可读可改,只可与非const对象对象绑定constintival = 1024; //int &ref2 = ival; //error:nonconst reference to a const objectconstint&refval = ival; //ok:both reference a
2016-12-15 14:48:12
2320
转载 使用 OpenSSL API 建立安全连接 - 双向认证
使用 OpenSSL API 进行安全编程一、概念:1.什么是 SSL? SSL 是一个缩写,全称是 Secure Sockets Layer。 它是支持在 Internet 上进行安全通信的标准,并且将数据密码术集成到了协议之中。 数据在离开您的计算机之前就已经被加密,然后只有到达它预定的目标后才被解密。 证书和密码学算法支持了
2016-10-27 21:28:54
1358
转载 MAC地址和IP地址的关系
简单地说:ip地址是服务商给你的,mac地址是你的网卡物理地址。 一、IP地址 对于IP地址,相信大家都很熟悉,即指使用TCP/IP协议指定给主机的32位地址。IP地址由用点分隔开的4个8八位组构成,如192.168.0.1就是一个IP地址,这种写法叫点分十进制格式。IP地址由网络地址和主机地址两部分组成,分配给这两部分的位数随地址类(A类、B类、C类等)的不同而不同。网络地址用于路由选择,而
2016-10-25 09:58:55
1996
转载 TCP API 网络编程函数
1.WSAStartup()函数 WSAStartup():功能是加载ws2_32.dll等socket程序运行环境的动态库(DLL)。在程序初始化后,socket程序运行所依赖的动态链接库不一定已经加载,WSAStartup保证了Socket动态链接库的加载。 int WSAStartup(_in Word wVersionRequested,_out LPWSDATA lpWSADat
2016-10-20 15:56:31
2498
1
转载 OpenSSL的VC编程 - MD5
由于诸多原因,前几天抽了点时间在网上找了一些OpenSSL的资料。网上的资料鱼龙混杂,我看原创的并不多。部分资料是讲OpenSSL命令行的操作,另一部分(基本上转载的那样一两篇)是Linux下的OpenSSL的API。 忍不住吐槽几句了。我见的90%的文章,都在说怎么怎么编译安装OpenSSL,然后使用的话就没下文了。难道你们的水平就仅限于安装它?安装软件不是小学初中就应该知道的东西
2016-10-19 16:37:30
1799
转载 OpenSSL体系下使用密钥数字证书等
首先得安装OpenSSL软件包openssl,安装了这个软件包之后,我们可以做这些事情: o Creation of RSA, DH and DSA Key Parameters # 创建密钥 key o Creation of X.509 Certificates, CSRs and CRLs # 创建证书 o Calculation of Message Digests
2016-10-19 13:39:25
473
原创 C++动态内存分配
C++动态内存分配new运算符1.C++中,用new和delete动态创建和释放数组或单个对象。动态创建对象时,只需指定其数据类型,而不必为该对象命名,new表达式返回指向该新创建对象的指针,我们可以通过指针来访问此对象。int*pi=new int;这个new表达式在堆区中分配创建了一个整型对象,并返回此对象的地址,并用该地址初始化指针pi 。 2动态创建对象的初始化
2016-10-19 12:37:02
610
转载 C++类的自动转换和强制转换详解和实现
C++类的自动转换和强制转换详解和实现首先说一下C++如何处理内置类型转换的:分为三种情况:(1)如果要进行的转换之间是兼容的,C++自动将值转换为接收变量的类型:如:intcount = 8.8; double time= 3; long day = 8; 在C++看来这些都是合法的,因为他们表示的本质是一样的:数字,而且C++包含了用于进行转换的内置规则
2016-10-18 14:30:24
717
转载 C++命名空间namespace
C++命名空间namespace命名空间 在C++中,名称(name)可以是符号常量、变量、宏、函数、结构、枚举、类和对象等等。为了避免,在大规模程序的设计中,以及在程序员使用各种各样的C++库时,这些标识符的命名发生冲突,标准C++引入了关键字namespace(命名空间/名字空间/名称空间/名域),可以更好地控制标识符的作用域。 使用命名空间的目的是对标识符的名称进行本地化
2016-10-15 16:23:55
411
转载 HTTP协议详解
引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HT
2016-09-29 09:18:45
330
转载 【Java系列】(七)Java多线程---线程安全
要说明线程同步问题首先要说明Java线程的两个特性,可见性和有序性。多个线程之间是不能直接传递数据交互的,它们之间的交互只能通过共享变量来实现。拿上篇博文中的例子来说明,在多个线程之间共享了Count类的一个对象,这个对象是被创建在主内存(堆内存)中,每个线程都有自己的工作内存(线程栈),工作内存存储了主内存Count对象的一个副本,当线程操作Count对象时,首先从主内存复制Count对象到工作
2016-09-28 09:59:51
397
原创 【Java系列】(一)Java图形化界面设计——中间容器(Jpanel)
Swing 程序用JFrame 对象实现了它们的窗口。JFrame 类是AWT Frame 类的一个子类。它还加入了一些Swing 所独有的特性。与 Frame 的使用十分相似。唯一的区别在于,你不能将组件加入到JFrame中。你可以或者将组件加入到JFrame 的content pane(内容面板) 中,或者提供一个新的content pane(内容面板)。 面板与顶层容
2016-09-26 20:19:38
6669
原创 【Java系列】(二)Java图形化界面设计——容器(JFrame)
程序是为了方便用户使用的,因此实现图形化界面的程序编写是所有编程语言发展的必然趋势,在命令提示符下运行的程序可以让我们了解java程序的基本知识体系结构。一、Java基本类(JFC)Java基本类(“Java FoundationClasses”,JFC),由一些软件包组成。这些软件包主要包括下面一些应用程序接口(API): 抽象窗口工具集(AWT)(1.1及以上版本
2016-09-26 20:18:51
1402
原创 【Java系列】(三)Java多线程---基础
Java线程:概念与原理一、操作系统中线程和进程的概念现在的操作系统是多任务操作系统。多线程是实现多任务的一种方式。进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。比如在Windows系统中,一个运行的exe就是一个进程。线程是指进程中的一个执行流程,一个进程中可以运行多个线程。比如java.exe进程中可以运行很多线程。线程总
2016-09-26 20:17:10
276
转载 【Java系列】(四)Java多线程---线程安全
前言: 记得大一刚学Java的时候,老师带着我们做了一个局域网聊天室,用到了AWT、Socket、多线程、I/O,编写的客户端和服务器,当时做出来很兴奋,回学校给同学们演示,感觉自己好NB,呵呵,扯远了。上次在百度开发者大会上看到一个提示语,自己写的代码,6个月不看也是别人的代码,自己学的知识也同样如此,学完的知识如果不使用或者不常常回顾,那么还不是自己的知识。大学零零散散搞了不
2016-09-26 20:15:56
495
转载 【Java系列】(五)java实现简单的窗体和密码验证(传参,事件机制和事件监听)
Java窗口的监听可以在window(及子类Frame,JFrame,JWindow)中使用addWindowListener方法来添加WindowListener。实现都窗口事件的监听。public interface WindowListener extends EventListenerWindowListener用于接收窗口事件的侦听器接口。旨在处理窗口事件的类
2016-09-26 20:14:37
1885
原创 【Java系列】(六)Java中常用的加密方法---单向加密算法
加密,是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信息的内容。大体上分为双向加密和单向加密,而双向加密又分为对称加密和非对称加密(有些资料将加密直接分为对称加密和非对称加密)。 双向加密大体意思就是明文加密后形成密文,可以通过算法还原成明文。而单向加密只是对信息进行了摘要计算,不能通过算法生成明文,单向加密从严格意思上说不能
2016-09-26 20:11:34
2861
最优阵列处理技术(Optimum Array Processing)中文版 part1
2018-03-13
STL容器使用代码
2017-01-05
c++函数stderr
2016-10-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人