自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 指针知识

#include using namespace std;void main(int argc,char **argv){ int *p = new int(); char *s = new char(); *s = 'd'; *p = (int)s; char cp = 'c'; *(char*)*p=cp; //std::cout <<*p<<" "<<(c

2017-08-20 19:27:06 184

原创 将博客搬至CSDN

计划将博客搬迁至CSDN。

2017-06-15 10:13:43 199

原创 指针好处之一

通过做项目,体会到了指针的好处。

2017-06-15 10:13:37 473

原创 c 结构体中存在指针,指针的不同赋值方法

#include#include#includestruct parameter{ char *fd; int hit;};int main(){ struct parameter*pptr = (struct parameter*)malloc(sizeof(struct parameter)); memset(pptr, 0, sizeof(struct parameter)); //ppt

2017-06-15 10:13:32 3984

原创 c++ std::find函数

template InputIterator find (InputIterator first,InputIterator last,​ const T& val);first,last分别指向一个序列中初始及末尾位置的输入迭代器。这个范围即 [first,last) ,包括 first 到 last 间的所有元素,包括 first 指向的元素,但不包括 last 指向的元素。val需要

2017-06-15 10:13:26 3104

原创 istringstream 用法

istringstream 类用于执行C++风格的串流的输入操作istringstream用空格作为字符串分隔符#include #include #include using namespace std;void test(){    {        //istringstream iss;        //iss.str("#123 1.23 aaa ,zzz kk,k oo.jjj"

2017-06-15 10:13:22 2653

原创 java PreparedStatement和statement的区别

1、 PreparedStatement接口继承Statement, PreparedStatement 实例包含已编译的 SQL 语句,所以其执行速度要快于 Statement 对象。2、作为 Statement 的子类,PreparedStatement 继承了 Statement 的所有功能。三种方法execute、 executeQuery 和 executeUpdate 已被更改以使之不

2017-06-15 10:13:12 244

原创 HashMap的工作原理

前言首先再次强调hashcode (==)和equals的真正含义(我记得以前有人会说,equals是判断对象内容,hashcode是判断是否相等之类):equals:是否同一个对象实例。注意,是“实例”。比如String s = new String("test");  s.equals(s), 这就是同一个对象实例的比较;等号(==):对比对象实例的内存地址(也即对象实例的ID),

2017-06-15 10:13:09 314

原创 java中的锁

1.自旋锁是采用让当前线程不停地的在循环体内执行实现的,当循环的条件被其他线程改变时 才能进入临界区public class SpinLock { private AtomicReference owner =new AtomicReference public void lock(){ Thread current = Thread.currentThread()

2017-06-15 10:13:03 182

原创 String,StringBuffer与StringBuilder的区别?

String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变内容的字

2017-06-15 10:13:00 189

原创 c++ Const关键字

转自:http://blog.csdn.net/Eric_Jo/article/details/4138548C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性,本人根据各方面查到的资料进行总结如下,期望对朋友们有所帮助。Const 是C++中常用的类型修饰符,常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。 一、C

2017-06-15 10:12:51 175

原创 java并发编程中CountDownLatch和CyclicBarrier的使用

转自:http://blog.csdn.net/hbzyaxiu520/article/details/6183714在多线程程序设计中,经常会遇到一个线程等待一个或多个线程的场景,遇到这样的场景应该如何解决?如果是一个线程等待一个线程,则可以通过await()和notify()来实现;如果是一个线程等待多个线程,则就可以使用CountDownLatch和CyclicBarrier来实

2017-06-15 10:12:44 169

原创 Java synchronized详解

转自:http://www.cnblogs.com/devinzhang/archive/2011/12/14/2287675.html第一篇:使用synchronized在编写一个类时,如果该类中的代码可能运行于多线程环境下,那么就要考虑同步的问题。在Java中内置了语言级的同步原语--synchronized,这也大大简化了Java中多线程同步的使用。我们首先编写一个非常简单的

2017-06-15 10:12:38 224

原创 b树的实现(c++)

转自:http://blog.chinaunix.net/uid-20196318-id-3030529.htmlB树的定义假设B树的度为t(t>=2),则B树满足如下要求:(参考算法导论)(1)  每个非根节点至少包含t-1个关键字,t个指向子节点的指针;至多包含2t-1个关键字,2t个指向子女的指针(叶子节点的子女为空)。(2)  节点的所有key按非降序存放,假设节点的关键字

2017-06-15 10:12:33 653

原创 R树的相关知识

转自:http://blog.csdn.net/houzuoxin/article/details/16113895   R树在数据库等领域做出的功绩是非常显著的。它很好的解决了在高维空间搜索等问题。举个R树在现实领域中能够解决的例子吧:查找20英里以内所有的餐厅。如果没有R树你会怎么解决?一般情况下我们会把餐厅的坐标(x,y)分为两个字段存放在数据库中,一个字段记录经度,另一个字段记录纬度。

2017-06-15 10:12:28 357

原创 c3p0 数据库连接池相关知识

c3p0数据库连接池的配置文件放在eclipse的src目录下,代码就可以识别。c3p0的配置文件的内容如下: 0

2017-06-15 10:12:22 362

原创 oracle创建存储过程中遇到的问题

create or replace PROCEDURE CLEAR AS tname varchar(200);BEGIN tname:='''immediate trace name flush_cache'''; ------->>这一句中,单引号的作用相当于转义字符,将其中的一个单引号转义为要使用的单引号,不表示oracle中字符串的标                        

2017-06-15 10:12:15 294

原创 java 读取src下的配置文件

很多时候,我们都将配置文件放在eclipse的src目录下,这个位置,相当于,当导出可执行jar包后,配置文件放在和jar同级的目录中,比如jar包放在/opt目录下,则配置文件放在/opt下,则jar包就可以读取配置文件中的内容。此时,java代码中可以通过   String path=CommonOperation.class.getResource("/").getPath();  

2017-06-15 10:12:10 1646

原创 linux netstat命令

netstat命令用来显示用于显示各种网络相关信息: -r:显示路由表 -n:以数字方式显示主机地址,不显示名称 -t:建立的tcp连接 -u:显示udp连接 -l:显示监听状态的连接 -p:显示指定套接字的进程的进程号及进程名可以用 kill命令来杀死

2017-06-15 10:12:00 146

原创 linux rpm包的编译

有些软件包的特性是编译者选定的,如果编译未选定此特性,将无法使用。rpm包的版本落后于源码包。 因此需要定制安装,也就是手动编译安装。编译需要编译环境。 编译的过程如下:1.下载源码2.执行 tar -xf3.cd到源码文件夹内4. ./configure    --prefix=/path/to/somewhere 指定软件安装路径    --sysconfdir

2017-06-15 10:11:56 461

原创 linux 软件包的命名规则

linux软件包的命名规则 eg:主包       bind-9.7.1-1.el7.i586.rpm       子包       bind-libs-9.7.1-1.el7.i586.rpm       bind-utils-9.7.1-1.el7.i586.rpm包名格式    name-version-release.arch.rpm    bind-major

2017-06-15 10:11:52 1254

原创 linux 交换分区 swap

linux swap分区用来保证内存过载时也可以使用,是在磁盘级别对内存的一次扩展,swap分区必须是一个单独的分区创建过程:   1.用fdisk 命令新建分区,在创建过程中通过L命令和t命令来调整分区类型为 linux swap类型   2.mkswap 将分区格式化为swap类型   3.启用和关闭交换分区 使用swapon和 swapoff /dev/partition name

2017-06-15 10:11:46 231

原创 linux lvm

一、linux的lv(logical volume)lv各层次示例图如下:核心思想:最底层的pv就是一个一个的磁盘,在保证总体容量的情况下,可以移除部分磁盘,在pv上面设置一个vg,相当于vg把所有pv的容量融合在一起,在vg之上再进行逻辑磁盘的容量分配,vg给lv进行空间分配时,是以pe为单位进行的。pe在lv层面叫le,这些功能都是由linux的dm模块,也就是device map

2017-06-15 10:11:42 393

原创 linux dd、echo 、watch、fuser命令

一、dd命令    以数据流进行复制,cp命令则是以文件为单位进行复制    if=数据来源    of=数据存储目标    bs=# 复制的字节数   count=# 复制几个bs   seek=# 跳过多少内容eg:dd if=/dev/zero of /dev/sda  bs-512 count=1 抹除磁盘信息二、echo 命令     1. echo   "n"| f

2017-06-15 10:11:38 432

原创 linux raid技术

一、概念  磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意。是为了提高文件在磁盘上的读写速度而研究出来的。将存入磁盘的数据分成一个一个的条带,然后并行地存储到磁盘阵列中,或者从磁盘阵列中以条带的形式并行地取数据。如下图:二、raid的级别: 0:条带技术( 单纯地将数据进行条带化处理,

2017-06-15 10:11:31 234

原创 linux 压缩和归档

在linux下有几种压缩方式:gzip、bzip2、xz、zipgzip  压缩文件以.gz结尾,  只能压缩文件,不能压缩目录 用法:  gzip:/path/to/somefile   用来压缩,完成后会删除原文件     -d 解压缩      -# :1-9 用来指定压缩比 eg:-9  gunzip /path/to/somefile  用来解压缩,完成后删除原压缩文件 

2017-06-15 10:11:27 151

原创 linux 各个文件系统之间的关系

linux 系统的各个文件系统是内置于内核中的,用vfs屏蔽了各个文件系统对于文件操作的差异,用户进程是通过系统调用来操作文件系统中的文件的。

2017-06-15 10:11:21 358

原创 linux 新建分区 、格式化 并挂载的命令

一、新建分区命令为fdisk /dev/diskname fdisk命令为交互式命令   p:显示当前硬盘上的分区,包括没保存的改动   n:创建新分区  e:表示扩扩展分区  p:表示主分区  d:删除一个分区  w:保存并退出  q:表示不保存退出  t:修改分区类型  l:显示支持的所有类型 一般:83:linux, 82:linux swap, 8e

2017-06-15 10:11:18 979

原创 linux 设备文件

一、设备文件     在dev目录下 外部设备通过创建好的设备文件连接到服务器上,例如可以通过设备号给连接上去的硬件发消息。 二、设备文件分类块设备 按块为单位,随机访问的设备 常见的有 硬盘 字符设备 按字符为单位,线性设备 常见的有 键盘 三、设备文件的一些标识主设备号(系统规定好的)   标示设备类型 次设备号   标识相同设备类型的不同设备四、创建设备文件命令

2017-06-15 10:11:14 410

原创 linux 文件存取 软硬联接的区别

一、linux文件存取过程  在linux系统中根目录是自引用的,比如要找 /etc/sysconfig/networkscripts/ifcfg-0文件先根据根目录/ 的inode号,在inode table中找到存储 / 的磁盘块,在磁盘块中找到目录etc所对应的inode号(在磁盘块中存储着一个文件名或者目录名对应的inode号的一个表),然后在inode table中根据etc的i

2017-06-15 10:11:09 183

原创 linux 磁盘管理与文件系统

一、磁盘分区的意义      磁盘分区就是为了将磁盘分成不同的逻辑区域,每个分区可以有不同的文件系统二、      磁盘分区是按照磁盘的柱面进行分区的,由于盘片在转动时的角速度都是一样的,所以磁头在最外层的磁道上读取信息的速度最快,当从读取大量数据时,包含最外层磁道的分区的读取速度是最快的。三、ext2文件系统结构   上图是整个分区的结构:    block   

2017-06-15 10:11:05 185

原创 linux开机过程

一、MBR(main boot record)主引导记录     主引导记录位于0盘面,0磁道,0扇区,早期由512个字节组成。     其中446个字节是boot loader程序。Boot Loader是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备,从而将系统的软硬件环境带到一个合适的状态,以便为最 终调用操作系统内核准备好正确的环境,最后从别处(Fl

2017-06-15 10:11:01 196

原创 Build Antlr4 projects with eclipse java project template.

from:https://shijinglu.wordpress.com/2015/01/22/build-antlr4-projects-with-eclipse-java-project-template/Posted on January 22, 2015 by shijingluBefore taking any action, remember to install antl

2017-06-15 10:10:55 313

原创 linux shell编程(三) if 和 for

if 条件判断:单分支的if语句if 判断条件; then statement1fi双分支的if语句if 判断条件;then statement1 statementelse statement3fi多分支的if语句if 判断条件1;then statement1 elif 判断条件2;then statement2 elif 判断条件3;then statement3

2017-06-15 10:10:48 183

原创 linux shell编程(二) 条件测试

bash中常用的条件测试有三种条件测试的表达式:[ expression ]  [[ expression]]第一种:整数测试:-eq 测试两个整数是否相等,比如[ $A -eq $B ] -ne 测试两个整数不等 -gt 测试一个数是否大于另一个数 (great than) -lt 测试一个数是否小于另一个数 (less than) -ge

2017-06-15 10:10:44 204

原创 linux shell 编程(一)

脚本:命令的堆砌,按照实际需要结合命令流程控制机制实现的源程序 linux 内核只能识别 elf格式的文件(可执行的可链接的文件)脚本的第一行写 #!/bin/bash 表示脚本解释器

2017-06-15 10:10:40 206

原创 linux sed 命

sed(stream editor):是流编辑器,按行进行操作,对符合模式的行在内存中进行操作,不对原文件进行修改,处理结束后将模式空间打印到屏幕。sed 的模式空间 处理文件流的内存空间叫模式空间,这个模式空间可以用正则表达式对文件进行过滤。sed [optitons]'AddressCommand' file,file....[optition]-n 不再显示模式空间中的内容,

2017-06-15 10:10:36 178

原创 一些linux命令

cut 命令eg:cut -d: -f1 /etc/passwd  将/etc/passwd 里面的每行 按照 ':'分割,并且取出分割后的第一个元素tr命令eg:tr 'a-z' 'A-Z 将'a-z'替换为'A-Z'history 命令用于显示历史命令 bc 计算命令eg:bcgrep命令grep能找出带有关键字的行,但是工作中有时需要找出该行前后的行,下面是解

2017-06-15 10:10:32 125

原创 linux 管道

linux的管道:前一个命令的输出当做后一个命令的输入 管道的形式:命令1 |命令2|命令3|....eg:echo"redhat"|passwd --stdin hive      cat /etc/passwd|sort      cut -d: -f1 /etc/passwd|sort

2017-06-15 10:10:28 151

原创 linux 输入输出重定向

输入输出重定向&> 混合重定向 /dev/null 数据黑洞> 覆盖输出>> 追加输出set -C 对已存在文件关闭覆盖重定向 强制覆盖输出则 >|2> 重定向错误输出2>> 追加错误输出

2017-06-15 10:10:24 353

空空如也

空空如也

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

TA关注的人

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