泪眼成诗

导航

2012年9月27日

c&&c++编译链接过程

摘要: 这篇文章写的真不错! 有些人写C/C++(以下假定为C++)程序,对unresolved external link或者duplicated external simbol的错误信息不知所措(因为这样的错误信息不能定位到某一行)。或者对语言的一些部分不知道为什么要(或者不要)这样那样设计。了解本文之后, 或许会有一些答案。 首先看看我们是如何写一个程序的。如果你在使用某种IDE(Visual Studio,Elicpse,Dev C++等),你可能不会发现程序是如何组织起来的(很多人因此而反对初学者使用IDE)。因为使用IDE,你所做的事情,就是在一个项目里新建一系列 的.cpp和.h文件,. 阅读全文

posted @ 2012-09-27 10:31 泪眼成诗 阅读(146) 评论(0) 推荐(0) 编辑

2012年8月10日

vs2008编译的程序如何在未安装vs的电脑上运行

摘要: 这几天忙着将python 改为 c++,找到了boost python 这把利器,但在vs2008编译后dll放到没有安装vs2008的电脑上用python import提示:importError:DLL loaded failed 应用程序配置错误。 解决办法:方法1:在vista及以上版本 只需将程序编译成release 即可,因为vista及以上版本已经默认安装了.NET Framework。 方法2:将运行时库设置成静态 具体操作:项目 -> 属性 -> C/C++ -> 代码生成 -> 运行时库 -> 多线程(/MT) MFC 程序需要静态链接 MFC 阅读全文

posted @ 2012-08-10 10:56 泪眼成诗 阅读(577) 评论(0) 推荐(0) 编辑

2012年4月21日

pgp中碰到的问题

摘要: 在做PGP的skr破解过程中,碰到AES验证无法和源码出来的结果匹配上,于是想从源码中直接提取AES算法的实现。在提取的过程中碰到了一些问题,现记录如下: 1.#define t_set(m,n) pgpAEStab_##m##n 此宏的定义 其实就是别名的定义,通过后面代码的查看(如t_set(f,l)[0][i] = w)可以推测,t_set(f,l)的定义就是怕重名, t_set(f,l)=pgpAEStab_fl,##相当于连接符; 2.定义了问题1中的宏后,后面碰到t_set(f,l)都会变成pgpAEStab_fl, 但是此变量都为定义过,因此会报错。解决办法(治标不治本)... 阅读全文

posted @ 2012-04-21 11:22 泪眼成诗 阅读(353) 评论(0) 推荐(0) 编辑

2011年10月26日

tinyxml 的使用

摘要: xml文件的操作:比较好的两篇文章http://panpan.blog.51cto.com/489034/104961http://www.wuzesheng.com/?p=260 阅读全文

posted @ 2011-10-26 15:40 泪眼成诗 阅读(125) 评论(0) 推荐(0) 编辑

2011年10月10日

汇编中调用函数堆栈的变化及段的定义

摘要: 今天阅读《unix环境高级编程》P153中关于c程序的存储空间布局提到栈的变化:自动变量以及每次函数调用时所需保存的信息都存放在此段中。有点不理解了,于是上网查资料。所得如下:摘要:本文说明高级语言编译成汇编语言后,高级语言中函数调用的汇编程序过程。正文:高级语言编译成汇编程序以后,在高级语言中的函数调用的汇编程序过程如下:1.将函数参数入栈,第一个参数在栈顶,最后一个参数在栈底。2.执行CALL指令,调用该函数,进入该函数代码空间。a.执行CALL指令,将CALL指令下一行代码的地址入栈。b.进入函数代码空间后,将基址指针EBP入栈,然后让基址指针EBP指向当前堆栈栈顶,并使用它访问存在堆栈 阅读全文

posted @ 2011-10-10 16:35 泪眼成诗 阅读(1695) 评论(0) 推荐(0) 编辑

2010年12月13日

linux内核树的建立 (转)

摘要: 本文是参考了网上多篇帖子而写的算不上什么原创。唯一值得欣慰的只不过在本机上实现罢了。因为毕竟失败了几次。也因为本人是初学驱动编程 很多简单的问题在我来说是相当的困难的。望有识之士不要笑话。最后,希望本文能给刚学驱动而还没开头的人提供一些帮助。 刚看 O'REILLY 写的《LINUX 设备驱动程序》时。作者一再强调在编写驱动程序时必须 建立内核树。所谓内核树,我的理解和网上资料说的一致就是内核源码的一种逻辑形式。那怎么建立呢?为此上网“翻云覆雨”起来而结果却是“惨败而归“。 为此托了一天又4个小时(当然包括吃饭睡觉的时间),连个简单的 hello wrold 都没实现。(书中p22页最简单也最 阅读全文

posted @ 2010-12-13 16:40 泪眼成诗 阅读(2456) 评论(0) 推荐(0) 编辑

2010年9月25日

UNICODE与ANSI的区别

摘要: 帮同学写个播放音乐的代码,用的是vs2005,本来调用下API中的mciSendSrring()就很容易解决,后发现老是有warning:incompatible types - from 'char [49]' to 'LPCWSTR' 当时也就认为是warning,没太在意。运行后发现 无法播放,连错误信息都是乱码。后查阅LPCWSTR 为何物,看到UNICODE 与ANSI字符集,不解,进而,查阅UNICODE与ANSI相关信息,终于发现了问题,原来是字符集的错误导致程序的乱码!vs2005默认是UNICODE 编码,vc是ANSI编码!以下转载UNICO 阅读全文

posted @ 2010-09-25 16:13 泪眼成诗 阅读(205) 评论(0) 推荐(0) 编辑

2010年8月28日

POJ1002

摘要: 此题先前搞了好几天,未果,留着,今天终于发现问题所在,原来是题意理解有问题。在所有号码都没有重复的情况下输出No duplicate。 我理解为只要这个号码没有重复就输出No duplicate。悲剧啊 。代码1:耗时》1500MS 用的是快速排序qsort,在这里对qsort有了进一步的了解。如果将字符串先转换为数字,在快速排序时间可以可以达到500MS左右。代码三为此方法.void qsort... 阅读全文

posted @ 2010-08-28 15:58 泪眼成诗 阅读(2324) 评论(0) 推荐(0) 编辑

2010年8月27日

POJ1008

摘要: 此题为水题,只要注意最后一天的处理即可:代码:代码特殊测试数据:4. uayet 259正确输出:13 ahau 364而不是:13 ahau 365 阅读全文

posted @ 2010-08-27 20:31 泪眼成诗 阅读(220) 评论(0) 推荐(0) 编辑

2010年8月24日

POJ1006

摘要: 题目:Some people believe that there are three cycles in a person's life that start the day he or she is born. These three cycles are the physical, emotional, and intellectual cycles, and they have perio... 阅读全文

posted @ 2010-08-24 16:36 泪眼成诗 阅读(208) 评论(0) 推荐(0) 编辑