认识MD5
MD5是一种安全哈希算法(secure hash algorithm,SHA);SHA是一种加密哈希函数(cryptographic hash function);加密哈希函数是一种哈希函数(hash function); 哈希函数是一种函数。下面我们就看一下这些概念。
1.函数(function)
学习过离散数学,我们对函数并不陌生。不严格地说,在定义域上上的值x...
游戏程序员养成计划
首先你要精通一门高级语言,比如C++或者C#,其次,要有良好的英文阅读能力。对游戏开发者来说英文阅读能力是最重要也是最基本的工具之一,因为你遇到的大部分资源都将是英文的,不要总等着别人为你翻译。慢慢尝试着阅读英文资料,你会发现其实也并没有那么难:)
刚开始,你要做的就是选择一门图形API,一般就是DirectX或者OpenGL之间选一个。如果考虑到跨平台,那么OGL...
在Vim中调用Go编译程序,并将错误用quickfix定位
配置go文件对应的compiler, 在ftplugin/go.vim加入一行:
compiler go
配置编译程序和quickfix读入编译结果的格式, 在$VIMRUNTIME/compiler新建go.vim并加入如下行:
" Vim compiler file
" Compiler: go
" Maintai...
msvc的一个不同目录下同名文件的编译链接问题
如果一个工程中两个源文件的名字相同,输出的obj目录又相同的话,在链接的时候可能会导致第二个同名文件中的符号不可见.
猜测可能是第二个obj文件覆盖掉了同目录下同名的第一个obj文件,从同导致链接的时候找不到第二个文件中的符号.
这个时候解决方法很简单:
给其中的一个文件重命名即可.
配置SVN服务器开机自启动
启动SVN服务器有两种方式:
1.第一种手动输入cmd命令,svn服务端软件服务的启动可以通过cmd命令来启动,定位到subversion的安装目录,我的机器是C:\Program Files\Subversion\bin, 输入命令 svnserve –d –r D:\Repositories,其中D:\Repositories是svn版本库的目录。
...
Data Deduplication in Backup and Recovery
In recent years, big data is being mentioned everywhere, and the protection of data has been highly concerned.
Years ago, data were backed up into tapes, which are storage devices with high ...
C 语言中的位取反操作符
话不多说,先来看一段代码:
1 #include <stdio.h>
2
3 int main(int argc, char *argv[])
4 {
5 unsigned char uc = 0x1f;
6 unsigned int ui = ~uc;
7 unsigned lon...
Root 作图
Drawing Axis Independently of Graphs or Higstrograms
TGaxis(xmin,ymin,xmax,ymax,wmin,wmax,ndiv,opt,gLength)
TGaxis->SetName("");
TGaxis->SetLabelSize(double_t);
TGax...
shuffling(洗牌)
Shuffling is a procedure used to randomize a deck of playing cards to provide an element of chance in card games. —wikipedia
1.如何洗牌?
我们玩扑克牌时洗牌可以使用Riffle方法,可以参考http:...
matlab编程3—添加工具箱
在matlab程序设计中,如果我们要引入别人的写好的工具箱,怎么做呢?
首先,介绍一下matlab中的两个概念:current directory 和 search directory。matlab中的文件操作将这两个文件夹作为引用点,所以我们的文件必须在这两个之一。
1.current directory
current directory在matlab的GU...
Haskell 实战:惰性地读取子进程输出
突然想给 locate 命令写个 wrapper,把输出中的家目录和一些因加密而引入的软链接显示为~。自然,这需要读取 locate 命令的输出。在 process 这个库中看到了readProcess函数,似乎是自己想要的(完整代码):
readLocate :: [String] -> IO String
readLocate args = getArgs >&...
sed实现n++
sed,按其名字,也就是个stream editor,就做各种字符串操作很在行,至于要做运算什么的那得是awk的事了,没想一时看到sed官网上居然有个这样的例子,把一个数字加1,使用sed来做,挺有意思的,瞄了一下,注解一下。
sed本身没有处理运算的支持,所以这个例子也是实际上使用了处理字符串的方法来模拟数学操作。主要思想就是考虑这两种情况:
1. 如果最后一位不是9...
Synfig 显示进度渲染
synfigstudio 渲染时不显示进度,狠令人讨厌。所以我就尝试直接调用 synfig CLI 来渲染。但总是要打命令,而且要盯着终端看,不直观也不爽。所以我就写了个脚本来显示 synfig 渲染进度,效果如图:
Gentoo的udev-mount
编译内核后,发现开机时OPENRC报错,说udev-mount 不能加载啊失败啊之类的。这个问题上次遇到过了,后来上网查了后解决了的,然后又忘记了。于是这次又遇到了,又无解了,只能再查。
现在果断记一笔:
CONFIG_ DEVTMPFS = y
iOS编程新手的一些问题(2)
2、Cocoa collections的问题。
NSArray, NSDictionary, NSSet,以及这些类型的Mutable形式类型有一个共同点,就是只能接受对象作为Value。结构体和基本类型是不能保存进collections的。所以诸如
NSMutableArray *array = [[NSMutableArray alloc]init];
...