随笔分类 -  C/C++

摘要:_stdcall在主调用函数中负责压栈,在被调用函数中负责弹出堆栈中的参数,并且负责恢复堆栈。因此不能实现变参函数,参数传递是从右到左。__cdecl在C或C++语言调用中默认的函数修饰_cdecl,由主调用函数进行参数压栈并且恢复堆栈,实参的压栈顺序是从右到左,最后由主调函数进行堆栈恢复。由于主调用函数管理堆栈,所以可以实现变参函数。 阅读全文
posted @ 2012-07-02 21:35 freewater 阅读(115) 评论(0) 推荐(0) 编辑
摘要:端模式(Endian)的这个词出自Jonathan Swift书写的《格列佛游记》。这本书根据将鸡蛋敲开的方法不同将所有的人分为两类,从圆头开始将鸡蛋敲开的人被归为Big Endian,从尖头开始将鸡蛋敲开的人被归为Littile Endian(这句话最为形象)。小人国的内战就源于吃鸡蛋时是究竟从大头(Big-Endian)敲开还是从小头(Little-Endian)敲开。在计算机业Big Endian和Little Endian也几乎引起一场战争。在计算机业界,Endian表示数据在存储器中的存放顺序。下文举例说明在计算机中大小端模式的区别。如果将一个32位的整数0x12345678存放到一 阅读全文
posted @ 2011-08-12 09:16 freewater 阅读(1386) 评论(0) 推荐(0) 编辑
摘要:虽然现在的操作系统(如:UNIX和Win2k/NT)都有进程内存跟踪机制,也就是如果你有没有释放的内存,操作系统会帮你释放。但操作系统依然不会释放你程序中所有产生了Memory Leak的内存,所以,最好还是你自己来做这个工作。(有的时候不知不觉就出现Memory Leak了,而且在几百万行的代码中找无异于海底捞针,Rational有一个工具叫Purify,可能很好的帮你检查程序中的Memory Leak。以后必要时,试一试! 阅读全文
posted @ 2011-07-23 13:31 freewater 阅读(199) 评论(0) 推荐(0) 编辑
摘要:1. clock_t clock( void );表示所属进程自调用以来,已经逝去的tick数目。常被作为计时函数使用。typedef long clock_t;clock_t start,finsh; //记录开始时间和结束时间double duration;start=clock();{ 任意想记录时间的程序}finish=clock();duration=(double)(finish-start)/CLOCKS_PER_SEC;待续。。。 阅读全文
posted @ 2011-05-17 22:24 freewater 阅读(784) 评论(0) 推荐(0) 编辑