自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 资源 (4)
  • 收藏
  • 关注

转载 斜杠“/” 反斜杠“\”

在Unix/Linux中,路径的分隔采用正斜杠"/",比如"/home/hutaow";而在Windows中,路径分隔采用反斜杠"\",比如"C:\Windows\System"。      有时我们会看到这样的路径写法,"C:\\Windows\\System",也就是用两个反斜杠来分隔路径,这种写法在网络应用或编程中经常看到,事实上,上面这个路径可以用"C:/Windows/Syste

2015-11-02 17:59:40 636

原创 数据结构之队列

一 链式队列数据结构:两个指向节点的指针front, rear;                 当链队为空时,front和rear都指向头节点,因此出队时,删除队尾节点时要注意!link_queue.h 1 typedef int type_t; 2 typedef enum {false, true} bool; 3 4 struct queue_nod

2015-10-12 16:19:25 437

原创 二叉树

1. 二叉树节点的创建(初始化)* * tree.c */#include #include "tree.h"struct tree_node *tree_node_create(data_t data){ struct tree_node *tmp = malloc(sizeof(*tmp)); tmp->data = data; tmp->left

2015-10-12 16:18:37 451

转载 win7 x64 若缺少msvcp71.dll,会造成不能上网,但网络连接正常!

在使用电脑的过程中,会遇到一些比较棘手的问题,比如某个系统文件丢失了,就会导致电脑给功能的失常。比如,当电脑中的msvcp71.dll、msvcr71.dll,就会不停的出现提示,而且导致部分软件功能失常,比如网络连接正常,却不能上网。

2014-11-06 20:50:37 2363

转载 pyton版排序算法

一:插入类排序1,直接插入排序

2014-07-28 07:03:50 528

转载 点​对​点​与​端​到​端​的​区​别

到点是网络层的,你传输层只认为我的数据是从a直接到e的,但实际不是这样的,打个比方,传输层好象领导,他发布命令:要干什么什么事,但真正干的不是他,真正干的是员工,也许领导认为很简单一句话就可以干好的事,在员工眼里却是难于登天,手续极其烦琐,所以传输层是发布命令的领导,他说的是命令,也就是最终的目的,所以他只看到最初的地址和最终的地址,既一个任务的两个端点,网络层就相当于员工,领导的任务我要一步一步

2014-06-18 08:21:53 619

转载 WEB点对点程序传输数据,是用HTTP协议还是TCP/IP协议?

WEB点对点程序传输数据,是用HTTP协议还是TCP/IP协议 Tcp/Ip协议和Http协议有什么区别,两个Web程序点对点传送数据,你会选择那一个?今天在网上看到这样一个面试题目,引发了一连串的查找资料,复习网络知识的事件……     大家都知道,http是网络应用层协议,而TCP/IP属于网络传输层协议,两者层次不同,没有办法进行比较。但是,个人认为,这个题目

2014-06-18 07:20:22 4959

原创 【坑】你写的个Android helloworld要用多长时间?

用在android开发环境新建个工程即可!但,配置Android开发环境,特别是jar包

2014-04-30 18:53:32 677

原创 linux 打包,压缩命令【实践】

$tar -cvf /tmp/bak1.tar      /home/username/Downloads        $tar -zcvf /tmp/bak2.tar.gz     /home/username/Downloads       $tar -jcvf /tmp/bak3.tar.bz2   /home/username/Downloads    

2014-03-25 01:19:52 562

原创 linux awk命令(文本分析工具)

awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。例子:$echo hello world | awk '{print $2}'$echo hello,world | awk -F\, '{print $2}'$ech

2014-03-03 08:41:17 748

原创 如何替换某文件中的所有的特定字符?---linux sed命令(文本编辑命令)

sed是一个很好的文件处理工具,主要是以行为单位进行处理,可以将数据行进行替换、删除、新增、选取等特定工作.(总:sed处理对象是文件,怎么处理?是以逐行处理,何种处理?替换,删除。。)sed命令行格式为:         sed [-nefri] ‘command’ 输入文本        常用选项:        -i∶直接修改读取的档案内容,而不是由萤幕输出。

2014-03-02 23:36:25 2396

原创 Linux shell的算术运算

Linux shell中所有的变量都是当作字符串来处理的!#!/bin/sh a=4b=3c=`expr $a + $b` echo $aecho $becho $cecho $a + $b // 此处不能不加空格,即$a+$b是错误的注:``,一条命令中嵌套另一条命令,expr是个命令echo `expr 3 + 4`结果:7

2014-03-02 23:04:13 617

转载 shell脚本

变量: 可以在任何时间通过简单的赋值来创建。 语法: - Linux 中的所有变量都被当作字符串引用变量: $符号用于引用一个变量的内容 variable1 = ${variable2}读入值给变量 在执行shell脚本时,shell还允许用户直接从键盘读入一个值给

2013-12-12 10:22:45 577

转载 构造函数与析构函数的起源

作为比C更先进的语言,C++提供了更好的机制来增强程序的安全性。C++编译器具有严格的类型安全检查功能,它几乎能找出程序中所有的语法问题,这的确帮了程序员的大忙。但是程序通过了编译检查并不表示错误已经不存在了,在“错误”的大家庭里,“语法错误 ”的地位只能算是小弟弟。级别高的错误通常隐藏得很深,就象狡猾的罪犯,想逮住他可不容易。根据经验,不少难以察觉的程序错误是由于变量没有被正确初始化或清除造

2013-12-04 18:16:16 513

转载 git使用总结

git目前是最流行的代码管理软件,包括Linux kernel源码和android源码都是由git来管理。git使用起来效率高,干净,生成的中间文件不会影响到代码,比起SVN有很大优势。目前在工作中也是用git来管理源码,这里简单梳理一下使用细节和命令。在ubuntu系统中安装gitsudo apt-get install git git-core建立统一的账户来管理git项目,这

2013-12-04 11:48:20 652

转载 linux下生成.so文件和.a文件

linux下生成.so文件和.a文件test.h1 #ifndef _TEST_H_2 #define _TEST_H_3 4 void TestA();5 void TestB();6 7 #endiftest_a.cpp1 #include 2 #include "test.h"3 4 void TestA()5 {

2013-12-04 02:19:42 629

转载 造成segment fault,产生core dump的可能原因

在程序运行的过程中,有的时候我们会遇到Segment fault(段错误)这样的错误。这种看起来比较困难,因为没有任何的栈、trace信息输出。该种类型的错误往往与指针操作相关。1、内存访问越界a) 由于使用错误的下标,导致数组访问越界b) 搜索字符串时,依靠字符串结束符来判断字符串是否结束,但是字符串没有正常的使用结束符c) 使用strcpy, strcat, spr

2013-12-04 02:05:45 963

转载 宏函数和函数的区别

函数和宏函数的区别就在于,宏函数占用了大量的空间,而函数占用了时间。大家要知道的是,函数调用是要使用系统的栈来保存数据的,如果编译器里有栈检查选项,一般在函数的头会嵌入一些汇编语句对当前栈进行检查;同时,CPU也要在函数调用时保存和恢复当前的现场,进行压栈和出栈操作,所以,函数调用需要一些CPU时间。 而宏函数不存在这个问题。宏函数仅仅作为预先写好的代码嵌入到当前程序,不会产生函数调用,所

2013-12-04 02:02:37 551

转载 头文件的循环依赖问题

比如,有三个头文件a.h(引用b.h),         b.h(引用c.h)           c.h(引用a.h)就会造成文件的循环依赖!后果,很可怕!比如有个文件a.c,上面有#include "a.h",那在a.c文件编译之前,预处理程序就会不断的把这三个头文件的内容复制过来,超过了一定的数量,就会导致“头文件数太多”的编译错误。解决方法呢,当然就是常见的#i

2013-12-04 01:56:52 6494 1

原创 关于在头文件中实现函数的情况

下面举个例子,这个例子只有3个文件/* fun.h */#ifndef FUN_H#define FUN_Hvoid base(){};void fun();#endif /* fun.c */#include "fun.h"void fun(){ base();}/* main.c */#include "fun.h"int main(){ f

2013-12-04 01:41:43 2032

转载 java多线程,MultpleThread

一、定义线程   第1中方法:扩展java.lang.Thread类                       Thread类中有个run()方法,其子类应该重写该方法!   第2中方法: 实现java.lang.Runnable接口                     使用接口Runnable的对象创建一个线程时,启动该线程时将会在独立运行的线程中调用(Runn

2013-11-30 13:16:02 555

原创 说说C中的malloc和free

malloc是申请一块内存,free是释放一块内存!说到内存,必然要说指针,指针指向某块内存嘛。如:某函数内定义一个指针变量,并为其申请一块内存,让这个指针指向这块内存!此时,指针变量本身存在函数的栈区(调用函数时,创建栈区;调用结束时,栈区销毁)      而这块内存是存放在堆区的!这里有个错误的结论:函数调用结束时,在栈内的指针销毁的同时,它指向的内存也被销毁!它们是没有关系的,堆

2013-11-28 11:43:51 647

原创 测试本机的大小端模式

1. 什么是大小端模式?区别?  (小端存储模式和大端存储模式)   如数字0x1234,低字节位是0x34,高字节位是0x12。 假设从地址0x4000处开始存放     内存地址         小端模式(little-endian)       大端模式(big-endian)      0x4000           0x34

2013-11-28 10:34:57 872

转载 SSH

SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。S S H最初是U N I X系统上的一个程序,后来又迅速扩展到其他操作平台。S S H在正确使用时可弥补网络中的漏洞。客户端包含ssh程序以及像scp(远程拷贝)、slogin(远程登陆)、sftp(安全文件传输)等其他的应用程序。SSH有很多非常酷的特性,如果它是你每天

2013-11-26 00:34:02 501

转载 apache

Apache是世界使用排名第一的Web服务器。它可以运行在几乎所有广泛使用的计算机平台上。Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache取自“a patchy server”的读音,意思是充满补丁的服务器,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可

2013-11-26 00:23:09 554

原创 数据结构之排序--归并排序

四 归并排序归并:把若干个有序的数列, 合成一个有序的数列如二路归并:void merge(int d1[], int len1, int d2[], int len2, int tmp[]){ int i, j, k; i = j = k = 0; while (i < len1 && j < len2) { if (d1[i] > d2

2013-11-18 15:44:55 518

原创 数据结构之排序--选择类排序

三 选择类排序    基本思想:从待排数列中选出最小的记录,放到已排好序的元素之后,直至所有元素排序完毕!1. 直接选择排序   初始时:有序区为空,无序区即待排数列   第一趟,从无序区中选出最小的,与无序区的第一个元素交换。新的有序区多一个元素,新的无序区少一个元素,有序区在无序区之前!   第二趟,......    ............#define SWA

2013-11-18 00:10:13 785

原创 数据结构之排序--交换类排序

二  交换类排序   基本思想是:两两比较待排序记录的关键字,发现两记录的次序相反时即进行交换,直到没有反序的记录为止!1. 冒泡排序    冒泡的原则:轻气泡不能在重气泡之下!    如何进行?从下到上扫描待排记录,凡违反冒泡原则的轻气泡就向上“漂浮”。如此反复进行,直到任意两个气泡,都是轻者在上,重者在下!void bubble_sort(int a[], int len)

2013-11-17 16:19:32 1001

原创 数据结构之排序--插入类排序

一. 插入类排序1. 直接插入排序2. 二分插入排序3.希尔排序    希尔排序优于直接插入排序。理由:1> 当待排数列大致有序时,比较和移动的次数较少(比较后才移动,比较的少自然移动的少,移动的少比较的也少)       2> 当待排数列元数个数较少时,n 与 n^2 的差距也小。即O(n)与O(n^2)差不多       3>希尔排序刚开始时,增量大,分组多,之后增量减

2013-11-17 11:53:54 865

原创 [error]stack smashing detected

字符串成功打印出来后,但是竟然报这个错:(栈溢出)*** stack smashing detected ***: ./test terminatedAborted (core dumped)结果都已经出来为什么报这个错呢?既然结果已经出来,推测应该不是算法(strnat1)的问题。下面是调用处的代码int main(){ char str[] = "123456

2013-11-13 12:57:01 1838

原创 [C/C++]写出几个无限循环

1. 写出几个死循环while (1) {}注:1不可省略for ( ; ; ) {}注:第一个条件为初始条件,第二个条件是循环结束条件,第三个表达式是变更表达式     循环结束条件若是省略的话,应写入循环体中。此时循环体中没有结束条件(此时程序已进入循环),故程序将一直执行。。。for(;;)编译成汇编后是无条件转移,while(1)

2013-11-11 16:17:24 7604

原创 几段关于const的代码

1. 改变const修饰的“只读变量”#include int main(){ const int a = 9; int *pa = (int *)&a; *pa = 10; printf("a = %d\n", a); return 0;}2. memmove(void *dest, const void *src, si

2013-11-11 13:20:43 786

原创 [C/C++]const的作用

首先:const修饰的变量是“只读变量”!如果你说成是“常量“,那说明你是个业余者,虽然你明白它是干嘛的。表达时尽量标准,趋近于专业!关于const最简单的一句“const意味着只读”! 这是一句正确的答案,但是这不够详细,不够深入!下面几个句应该知道是什么意思:1. const int a;2. int const a;      这两句是一个意思:a是“只读的”,即

2013-11-11 12:58:54 773

原创 warning:initialization discards ‘const’ qualifier from pointer target type 解决方法

initialization discards ‘const’ qualifier from pointer target type意思是,初始化时丢掉了(目标类型的)‘const’限定符eg: const int a = 9; int *pa = &a;就会报这个警告!方法一:const int *pa = &a;方法二:int *pa = (int *)&a;   这种

2013-11-11 12:13:59 20689

原创 C++中引用和指针的区别

引用可看作是某变量的别名,对引用进行操作就像操作原变量(直接操作)!主要在函数传递参数时使用,如SWAP函数指针的值存的是变量的地址,通过操作指针可以间接操作变量!区别:    1.引用声明时必须指定引用的对象,指针不必    2.引用不能为空,指针可以为NULL    3.引用一旦声明就不能改变,指针可以指向不同的对象    4.引用访问对象是直接访问,指

2013-11-10 20:20:31 697

转载 数组名和指针的区别

只有在作为函数的参数时,数组名和指针才是相同的(即“数组名就是指针”,只适用于这种情况)!其余情况一律不同!第一:数组名不是指针!它们的大小不同第二:数组名很像指针!比如,数组名可以赋给指针。又比如strcpy函数是以字符型指针为参数,但是我们可以传给它数组名!数组名的本质:1.数组名的内涵在于指代实体是一种数据结构,这种数据结构就是数组。(数组名带指一种数据结构:数组)

2013-11-10 12:25:56 659

原创 TCP和UDP的区别

TCP(Transimission Control Protocol 传输控制协议)和UDP(User Datagram Protocol)是传输层的两种实现版本!它们之间提供基本的服务又各有所长。因此,根据对特定服务质量的要求,应用层软件单元可以选择通过传输层的TCP版本或者UDP版本来传输数据。TCP和UDP之间的区别:第一,基于TCP的传输层在发送报文前要建立一个连接!

2013-11-09 22:28:14 463

原创 [c/c++]static的作用

一:有关生命周期,加了static的局部变量,存储在data区,并且它的初始化是由编译器完成如:int fun()  {static int tmp = 1; tmp++; return tmp;}      当在main中两次调用fun()时,int a = fun(), int b = fun(),此时结果为: a = 2, b = 3;       原因就是程序编译过之后,fun

2013-11-02 15:12:01 567

原创 chmod三种用法

如:file.c的权限为rw-rw-r--要更改为rwxrwxr--第一种方法: 在原来权限的基础上进行加减chmod u+x,,g+x,o-w file.c第二种方法:取消原来的权限,赋新的权限chmod u=rwx,g=rwx,o=r file.c第三种方法:数字赋权限chmod 0774 file.c

2013-09-25 09:54:28 2758

USB转串口工具(串口类型ttl)

串口类型ttl(设备上有标准),解决USB串口不能识别或连接不稳定问题

2024-01-28

HA-Notepad

HA-Notepad代码工具

2013-11-20

查看网络连接密码和账号

能够显示出计算机中记录的拨号网络密码,让忘了密码的使用者能够赶紧记录下遗忘的密码。 在紧要关头,它会让你体验到它的奇效!

2011-08-06

MagicStudio源码

c#代码编写实习悬浮与停靠窗口效果,美化界面

2011-04-08

MagicDocking

C#中代码窗口悬浮与停靠,让你的界面更简洁,美观

2011-04-08

空空如也

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

TA关注的人

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