- 博客(42)
- 资源 (34)
- 收藏
- 关注
原创 rbtree原理及应用--插入
插入参考结点为何要选择叔结点?[ 整个红黑操作过程中,涉及到的结点包括:当前结点、兄弟结点、父结点、叔结点、祖父结点。 当前结点即是新插入结点,新插入的结点被默认设置成红色。根据当前结点可以确定的条件只剩下一个了,就是当前结点是左孩子或右孩子。插入红色结点,不会影响性质5,但是可能会影响性质4、性质2。对于性质2,只有是插入结点是根结点的
2017-08-16 20:52:18
913
原创 rbtree原理及应用--前世今生及性质
历史 在1972年,德国的计算机科学家Rudolf Bayer发明了一种特殊的4阶的B-树结构,这种数据结构保存了所有的从根到叶结点的拥有相同结点的路径,创建出来的理想平衡树。但是,这种树并不是二叉搜索树,所以,Bayer在他的论文中称它们为“平衡二叉B-树”,后来,这种树变成了流行的2-3-4树。 1978年,一篇《A Dichromatic Framework fo
2017-08-16 20:36:31
643
原创 gcc的__attribute__((section(“”)))属性含义
通过这个gcc提供的扩展机制,可以将特定的变量存放在自定义的段中。如下面的程序中,将t11、t12、t13放置在st1段中,并对t11、t13进行了初始化,将t2放置在st2段中,将t3放置在st3段中。验证这些部分,可以使用下面例子提供的objdump命令,在操作过程中,注意objdump的参数和st1段中三个变量的位置和初始值的保存。现将该段测试使用的objdump的参数及含义整理如下
2017-07-29 11:23:26
10620
原创 OpenWRT的WiFi部分使能过程详解
附件给出了netifd在启动wifi设备的AP功能的全部过程,现就其中的几点说明如下: 1) OpenWRT中的wifi配置页的Enable|Disable按钮,首先通过luci/view/admin_network/wifi_overview.htm +428给出,从中可以看出来,其中调用了wifi_shutdown这个方法,该方法在luci/controller/admin/netw
2017-01-19 11:42:41
7194
3
原创 MPICH的源码编译、安装
(该过程没有执行完毕,但到目前为止,这些过程均有效)交叉编译zlibcd ~mkdir zlibtar -zxf zlib-1.2.8.tar.gz cd zlib-1.2.8/CC=mips-linux-gnu-gcc ./configure --prefix=/home/jack/zlibmakemake install交叉编译OpenSSLcd
2013-11-14 10:20:39
3212
原创 taskset命令:多核执行任务
taskset提供的参数:$ taskset taskset (util-linux-ng 2.17.2)usage: taskset [options] [mask | cpu-list] [pid | cmd [args...]]set or get the affinity of a process -p, --pid operate on
2013-08-27 16:05:49
5697
原创 MySQL自学习第一篇:源代码目录结构
1、BUILD BUILD目录是编译、安装脚本目录,绝大部分以compile-开头,其中的SETUP.sh脚本为C和C++编译器设置了优化选项。2、client client目录包括常用命令和客户端工具代码,这些源代码文件中包括密码确认功能get_password.c、SSL连接可行性检查、MySQL客户端mysql.cc、mysqladmin工具和mysqladmin用于
2013-05-27 08:52:06
2658
原创 cat /proc/$PID/status
Name: widState: S(sleeping)Tgid: 10366Pid: 10366PPid: 1TracerPid: 0Uid: 0 0 0 0Gid: 0 0 0 0FDSize: 64Groups: 0 VmPeak: 68060
2013-05-24 09:29:14
3661
转载 Linux slab 分配器剖析
点击打开链接Linux slab 分配器剖析了解 Linux 内存管理的方式M. Tim Jones, 顾问工程师, Emulex简介: 良好的操作系统性能部分依赖于操作系统有效管理资源的能力。在过去,堆内存管理器是实际的规范,但是其性能会受到内存碎片和内存回收需求的影响。现在,Linux® 内核使用了源自于 Solaris 的一
2013-05-22 10:51:51
619
原创 一个奇怪的free的应用
#include #include #include #include struct str{ char *name; int age; char *like; struct str *next;}; int dcli_free_single_link_list_L1(const int pointer_num, void *first_elem, /*void
2013-01-25 15:04:54
591
原创 判断system函数的返回值
#include #include #include #include intmain(){ pid_t status = 0; status = system("mkdir a"); if (-1 != status && WIFEXITED(status) && (WEXITSTATUS(status) == 0))
2013-01-25 14:59:35
3027
原创 Linux下Android开发环境搭建
Linux下Android开发环境搭建 (这篇博文写的这么细,是给公司里面不懂的人看的,也没几个懂的,小公司,笔者也就是学着做出来的。还是网上牛人多,还请见谅!) 1、系统环境 [android@localhost ~]$ uname -aLinux localhost.localdomain 2.6.32-71.el6.i686 #1SMP Wed Sep 1 01
2012-04-24 10:24:28
29542
原创 Qt基本
1、安装 下载:qt-win-opensource-4.3.2-mingw.exe、MinGW-3.4.2.rar,先安装MinGW,然后安装Qt即可。 将环境变量中的Path变量中增加对应目录下的bin目录即可。 增加Lib和Include变量,其值分别为对应的lib和Include路径,这样就可以双击编译成功的可执行程序了。2、make错误:E
2012-02-22 18:20:07
1897
原创 ListCtrl控件CListCtrl
CListCtrl m_listAudit;一、插入表头 CString AuditTitle[15] = { "系统时间", "操作类型", "用户名", "EB原磁盘位置", "EB原名称", "EB原路径", "EB原扩展信息", "EB目的磁盘位置", "EB目的名称", "EB目的路径", "
2012-01-10 23:46:21
1209
转载 WindowsAPI的时间结构体、时间转换及时间获取
WindowsAPI的时间结构体、时间转换及时间获取http://laoqian647.blogbus.com/logs/79185366.htmlWindowsAPI的时间结构体、时间转换及时间获取时间格式:DosDateTimeFileTimeSystemTime |
2011-12-31 13:41:13
2356
转载 计算机的几种时间格式
计算机的几种时间格式注意:本文大部分翻译自Matt Pietrek 在1997年2月MSJ上的Under The Hood专栏。链接:http://www.microsoft.com/msj/0297/hood/hood0297.aspx 一.FILETIME和SYSTEMTIME格式 我遇到的第一种时间格式是在使用函数GetFileTime时返回的FILE
2011-12-31 10:16:33
2119
转载 VC6.0 String的用法
VC6.0 String的用法 string类的构造函数:string(const char *s); //用c字符串s初始化string(int n,char c); //用n个字符c初始化此外,string类还支持默认构造函数和复制构造函数,如strings1;string s2="hello";都是正确的写法。当构造的string太长而无法表达时会抛出length_erro
2011-12-17 19:11:16
8281
原创 VS2008中的类型转换
1、将CString类型转换为string类型:TCHAR chDir[MAX_PATH];memset(&chDir,0,sizeof(TCHAR)*MAX_PATH);GetCurrentDirectory(MAX_PATH,chDir);CString strTemp;strTemp.Empty();strTemp.Format(_T("%s"),chDir);
2011-12-16 17:25:37
1878
原创 MFC中的类使用注意
1、CString类在将其初始化为某一数据时,不能使用memset函数,否则导致程序出错; 2、CString类并不能无限制的增长(据说是4K的空间),如果字符的数据量较大,不妨将其写入到文件中,然后再读取出来;
2011-12-15 16:03:38
584
原创 在VC中打开浏览文件夹对话框
如果打开浏览文件夹对话框,并且执行成功之后,程序的当前活动路径即修改为该对话框选定的路径,即如果创建相对路径下的一个文件,该文件的路径是相对于浏览文件夹对话框选定的路径。BROWSEINFO bi ;TCHAR szPathName[MAX_PATH];CString str = L"";CString strDir = L"";//选择的目录TCHAR szTitle
2011-12-10 18:51:04
2984
原创 在VC中获取特定的路径
在VC中获取system32的完整路径:TCHAR chWinDir[MAX_PATH];memset(chWinDir,0,MAX_PATH);GetWindowsDirectory(chWinDir,MAX_PATH);//获取系统安装路径TCHAR system32[] = _T("\\system32");SHGetSpecialFolderPath(NULL,
2011-12-08 22:18:11
1286
原创 VC++6.0与VS2008的区别
(本文在笔者使用过程中进行汇总,仅仅追加) 在MFC方面: 1、VC 6.0中的字符类型大部分是char类型,而VS中则较多的采用TCHAR类型,即采用wchar_t的参数类型,在VS中,针对字符串常量,需用"_T()"进行类型强制类型转换的操作; 2、在VS中,IDE增加了很多类模板、容器等;
2011-12-08 09:07:54
3204
原创 在VC中遍历查看进程并结束进程
在VC中查找进程会用到以下几个函数:::CreateToolhelp32Snapshot(...)//获得当前进程的快照Process32First(...)//获取第一个进程的句柄Process32Next(...)//获得下一个进程的句柄 如下例所示:HANDLE shot = ::CreateToolhelp32Snapshot(TH32CS_SNAPPROCE
2011-12-06 13:03:52
4704
原创 让MFC程序隐藏运行界面
在MFC中隐藏运行界面确实花花点功力。 针对对话框程序,一种不是很好地实现方法是在OnPaint函数中添加如下代码:CWnd::ShowWindow(SW_HIDE);添加后执行会发现屏幕会闪烁一下之后只在后台运行。 有一种好方法,就是在OnInitDialog(...)中加入以下的代码:SetWindowPos(&CWnd::wndNoTopMost,
2011-12-05 10:35:10
9389
1
原创 VC中的文件删除操作
在VC中可用DeleteFile删除指定文件名的文件,这种删除方法是永久删除,不会在回收站中看到已删除的文件。如下例所示:DeleteFile("USB20.dll");//这句话将USB20.dll永久删除掉
2011-12-05 10:32:35
1413
原创 添加打开和另存为对话框
在MFC中可以利用CFileDialog类完成,该类派生自CCommonDialog类,简介派生自CDialog。其构造函数如下:CFileDialog(BOOL bOpenFileDialog,//设定用于构建“保存为”对话框(FALSE),构造“打开”对话框(TRUE) LPCTSTR lpszDefExt = NULL,//缺省的文件扩展名,当lpszDefExt被设定时,
2011-12-01 14:28:51
1382
原创 VC中的文件操作
在VC中对文件的操作主要有以下几种方法:1、使用C++中的ofstream类和ifstream类完成对文件的读写;2、使用C语言中的C文件达到目的;3、使用Win32的API函数;4、在MFC程序中,可以借助MFC封装的CFile类对文件进行操作。 首先,在头文件中包含fstream.h。 在向文件中写入数据时,可以使用C++的ofstream类,在从文件中读取数据时,
2011-11-24 16:01:58
5423
原创 VC中各种数据类型之间的转换
一、int类型转换为字符类型 int i = 13456; char ch[6]; memset(ch,0,6); //将名称为ch的缓冲区以“\0”进行填充 itoa(i,ch,10); //将i按十进制方式转换到ch中二、在VS2008下将char类型转换为CString类型: char cTemp; CStr
2011-11-24 15:48:13
720
原创 Static控件操作
//修改标题控件字体CFont *fTitle;fTitle = new CFont;fTitle->CreateFont(50,//字体的高度 0,//字体的宽度 0,//字体显示的角度
2011-11-23 23:36:36
521
原创 对话框全屏
在OnInitDialog()函数中,调用this->ShowWindow( SW_SHOWMAXIMIZED);函数用于将对话框全屏。 其可选参数如下:SW_HIDE 隐藏该窗口,并激活另一个窗口。SW_MINIMIZE 最小化窗口,并且激活系统列表中的顶层窗口。SW_RESTORE 激活并显示窗口。如果窗口最大化或最小化,窗口将被还原为其初始化
2011-11-23 21:50:56
1324
1
原创 Windows下硬件信息获取
到目前为止,发现在windows下相关硬件信息的获取可以有几种方法:在C/C++中嵌入汇编语言,这种方式针对CPU之类的硬件设备更为有效,因为CPU并不将其所有信息放置在内存中,需要直接读取CPU的寄存器内容;第二个是使用WinIo,也就是Yariv Kaplan编写的,这个第三方方案可以使用内核模式下设备驱动程序和其他的一些底层编程技巧绕过Windows安全保护机制,达到允许32位Windows
2011-11-14 19:43:24
5013
原创 Windows系统命令使用
切换到Administrator用户: C:\Users\sl>change user administrator /query已启用应用程序执行模式。安装模式不适于为远程管理配置的远程桌面会话主机服务器。删除文件:C:\Users\sl>cd..C:\Users>cd..C:\>cd WindowsC:\Windows>cd System32C:\Win
2011-11-07 10:39:04
1218
原创 DateTimePicker控件
时间在计算机(Windows系统)中存储的主要是两种数据类型:long型、double型。long型存储的时间是UTC标准时间。存储时间开始的说法可能会有所不同,但是在VC6.0中编程所得的结果是自1970-1-1 8:00:00开始计算的秒数。还有一种在计算机中表示的时间:FILETIME结构体,该结构体使用两个32位的unsigned long型表示时间,从1601-1-1以来的时间,单位是万
2011-11-06 15:31:00
5821
转载 Sqlite3支持的数据类型 日期函数 Sqlite3 函数
Sqlite3支持的数据类型 NULL INTEGER REAL TEXT BLOB但实际上,sqlite3也接受如下的数据类型: smallint 16 位元的整数。 interger 32 位元的整数。 decimal(p,s) p 精确值和 s 大小的十进位整数,精确值p是指全部有几个数(digits)大小值,s是指小数点後有几位数。如果没有特别
2011-11-04 16:57:02
600
转载 SQLite3 C/C++ 开发接口简介(API函数) 二(zt)
SQLite3 C/C++ 开发接口简介(API函数) 二(zt)转载标签:知识/探索 2.2 执行 SQL 语句 typedef int (*sqlite_callback)(void*,int,char**, char**); int sqlite3_exec(sqlite3*,
2011-11-04 16:49:45
572
转载 sqlite3 部分命令操作
sqlite3 命令 操作 一、数据库基础数据表(SQLITE_MASTER)select * from SQLITE_MASTER; 通过select查询该表,该表保存数据库中保存的表结构等基础内容; 二、sqlite3特殊命令所有sqlite3特殊命令都是以“.”开始的,当用户输入整行数据的时候,sqlite3自动认为是正常的SQL命令;当以“
2011-11-04 11:32:59
636
转载 sqlite3中的数据类型
sqlite3中的数据类型大多数的数据库引擎(到现在据我们所知的除了sqlite的每个sql数据库引擎)都使用静态的、刚性的类型,使用静态类型,数据的类型就由它的容器决定,这个容器是这个指被存放的特定列。Sqlite使用一个更一般的动态类型系统,sqlite中,值的数据类型跟值本身相关,而不是与它的容器相关。Sqlite的动态类型系统和其他数据库的更为一般的静态类型系统相兼容,但同时,sq
2011-11-04 10:16:49
980
转载 sqlite3+使用总结
前序Sqlite3 的确很好用。小巧、速度快。但是因为非微软的产品,帮助文档总觉得不够。这些天再次研究它,又有一些收获,这里把我对 sqlite3 的研究列出来,以备忘记。这里要注明,我是一个跨平台专注者,并不喜欢只用 windows 平台。我以前的工作就是为 unix 平台写代码。下面我所写的东西,虽然没有验证,但是我已尽量不使用任何windows 的东西,只使用标准 C 或标准C++。
2011-11-04 10:13:34
5623
处理器架构.英特尔软件学院教材编写组
2018-03-31
PCI Express系统体系结构标准教材.Pavi·Budruk.!田玉敏
2018-03-31
Oracle Database 11g DBA手册
2018-03-31
神经网络与机器学习.3.海金.!申富饶
2017-12-02
MPICH源码,在linux下的交叉编译已完成
2013-11-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人