上一页 1 ··· 29 30 31 32 33 34 35 36 37 ··· 41 下一页
摘要: 因为一些特性复杂,很多时候也用不到一些特性,所以忘记了,算是随笔,也当作一个临时查找的手册。没有什么顺序,很杂。1.构造函数通过函数重载的机制可以有多个(不同的构造函数,参数个数,或者参数类型不同。),但是析构函数只能有一个。当没有在代码中写明构造或析构函数时,编译器会自动生成缺省的构造或析构函数。... 阅读全文
posted @ 2014-06-08 11:47 foo__hack 阅读(825) 评论(0) 推荐(0) 编辑
摘要: 原文地址:http://graphics.stanford.edu/~seander/bithacks.html有本书叫hack‘s delight也是主讲位运算的。下面正文开始翻译吧,不定时更新。声明:如无特殊说明,所有的代码段都是不受版权限制的,如果喜欢,大家可以随便使用。文章内容由Sean E... 阅读全文
posted @ 2014-06-06 16:37 foo__hack 阅读(1535) 评论(0) 推荐(0) 编辑
摘要: #include #include char cmp_shellcode[] = "\x55" "\x89\xe5" "\x8b\x4d\x08" "\x8b\x45\x0c" "\x8b\x10" "\x8b\x01" "\x29\xd0... 阅读全文
posted @ 2014-05-12 14:34 foo__hack 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 原本想花点时间来学习下Vim或者emacs,结果在网上搜索到这篇文章骂战挺多的,但是也长见识http://bbs.csdn.net/topics/390306165下面是windows下的emacs学习教程,如果真想学习emacs我觉得还是找个Unix-like的操作系统(MAC OSX和Linux... 阅读全文
posted @ 2014-04-30 10:50 foo__hack 阅读(325) 评论(2) 推荐(0) 编辑
摘要: 这个NSIS脚本是打包公司的整个Release项目工程。用NSIS编译器编译下就可以了。; Script generated by the HM NIS Edit Script Wizard. !include "StrFunc.nsh"; HM NIS Edit Wizard helper def... 阅读全文
posted @ 2014-04-11 16:58 foo__hack 阅读(2141) 评论(0) 推荐(0) 编辑
摘要: 妈蛋,我发现VS下开发C语言,并不是把文件名改成.C的就行了。VS2010不支持C99。 也就是函数局部变量声明必须放在函数的开头。难怪,我从Linux下移植过来的.c工程怎么是编译错误呢,发现是变量声明的位置不是在函数开头。(GCC是支持C99的,但是不是完全支持,因为C99没被任何一款编译器完全支持)C89一般又叫ANSI C标准。一个题外话,C11是出来的了,有一款编译器是支持C11的:Pelles C以下是在VS2010环境下开发纯C程序的解决方案(C89):http://stackoverflow.com/questions/5770858/how-to-develop-c-with 阅读全文
posted @ 2014-04-10 18:08 foo__hack 阅读(841) 评论(0) 推荐(0) 编辑
摘要: 有参考文件可以看出,应该还是简单的。 = =!Qt库的安装目录bin下,我把它添加到Path环境变量中也无用,真是搞不懂,按理来说windows搜索完当前目录会去Path指定的路径下搜索啊?为什么必须得把DLL拷贝到Qt生成的可执行程序的相同目录下才有用。链接的时候需要填写相应的导入库.lib文件都是导入库,依赖于对应的dll文件。Qt库的安装目录bin下,我把它添加到Path环境变量中也无用,真是搞不懂,按理来说windows搜索完当前目录会去Path指定的路径下搜索啊?以上带红色的问题解决了,添加到Path变量中是有用的,因为以操作系统进程角度来看,进程在生成的时候只会去系统环境变量中取一 阅读全文
posted @ 2014-04-04 11:15 foo__hack 阅读(957) 评论(0) 推荐(0) 编辑
摘要: 先用这两个工具:Slic3R或者Skeinforge:这个两个工具的作用就是把STL文件切片为叠加的矢量图(SVG格式)因为SVG是分层的,一层一层的把每层都转换成一张Bmp文件听说ImageMagick和Inkscape都可以转换Slic3r-console的命令行用这个:Slic3r-conso... 阅读全文
posted @ 2014-04-02 18:19 foo__hack 阅读(2950) 评论(2) 推荐(0) 编辑
摘要: memset是一个经常被用来初始化数组的函数,其定义如下:1void * memset ( void * ptr, int value, size_t num );它的效果大致是把以ptr为起始地址,长度为num个字节的内存区间内,每个字节的值都设值成value。这里就有一个奇怪的现象了,为什么value的类型被声明成了int,但却只用到了最低位的那个字节?或者说为什么memset只需要一个字节的值来做填充,但却需要用户传入一个int?这还要从C89标准说起,据说在C89标准出来之前,C的代码中并不强制函数原型的声明,如果一个函数的调用出现在了它的声明之前,编译器会去假设一个声明。比如说:12 阅读全文
posted @ 2014-04-02 12:36 foo__hack 阅读(727) 评论(0) 推荐(1) 编辑
摘要: 微软的自带记事本程序notepad.exe会给UTF-8编码的文件头加入三个隐藏的字节(即BOM)。这是一种很愚蠢的做法。就是为了让编辑器不去猜测文件本身是ASCII码还是UTF-8。什么是BOMBOM(byte-order mark),即字节顺序标记,它是插入到以UTF-8、UTF16或UTF-32编码Unicode文件开头的特殊标记,用来识别Unicode文件的编码类型。对于UTF-8来说,BOM并不是必须的,因为BOM用来标记多字节编码文件的编码类型和字节顺序(big-endian或little-endian)。在绝大多数编辑器中都看不到BOM字符,因为它们能理解Unicode,去掉了读 阅读全文
posted @ 2014-03-27 09:29 foo__hack 阅读(613) 评论(0) 推荐(0) 编辑
上一页 1 ··· 29 30 31 32 33 34 35 36 37 ··· 41 下一页